Transcript
Page 1: Mail Tracking Faber KP

MEMBANGUN SISTEM INFORMASI

MAIL TRACKING MONITORING

DENGAN MENGGUNAKAN JANGOSMTP

CBN

Jl Sriwijaya kav 5-7 Lippo Cikarang

KERJA PRAKTEK

Diajukan untuk memenuhi Syarat Mata Kuliah Kerja Praktek

Program Strata I (S1) Program Studi Teknik Informatika

Fakultas Teknik dan Ilmu Komputer

Universitas Komputer Indonesia

FABER BANJARNAHOR 10110635

PROGRAM STUDI TEKNIK INFORMATIKAFAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIABANDUNG

2010

Page 2: Mail Tracking Faber KP

LEMBAR PENGESAHAN

MEMBANGUN APLIKASIEMAIL TRACKING MONITORING SYSTEM DENGAN

MENGGUNAKAN JANGO SMTPPT.MULTICOMMTECH

FABER BANJARNAHOR 10110635

Page 3: Mail Tracking Faber KP

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Yayasan Cahaya Bagi Negeri Indonesia (CBNI) adalah sebuah Production

House yang menghasilkan produk berupa tayangan (film) kesaksian kisah nyata dan

sekolah broadcasting. Perusahaan CBN berbentuk yayasan sehingga tidak dapat

melakukan prosedur bisnis yang menghasilkan keuntungan berupa dana. Yayasan

CBN mendapatkan sumber dana dari donasi para Mitra CBN yang telah berkomitmen

dan bersedia memberikan bantuan berupa uang setiap bulan sesaui dengan

kemampuan mitra yang telah disepakati. Donasi tersebut digunakan untuk membantu

kegiatan operasional produksi di CBN.

Informasi mengenai seluruh kegiatan dan tayangan produksi CBN tidak hanya

disampaikan melalui siaran televisi namun juga menggunakan media teknologi

website. Official website yayasan CBN (jawaban.com) merupakan salah satu produk

CBN berbentuk media website yang digunakan untuk menyampaikan berita – berita

(renungan harian, olahraga, kesehatan, hubungan keluarga, entertainment, bisnis dan

keuangan), dan rangkuman rangkaian tayangan serta seluruh aktivitas CBN sehingga

dapat dilihat/akses oleh masyarakat umum dengan tujuan menjaring mitra – mitra

baru yang paham akan pentingnya makna yang terkandung dalam setiap tayangan

dan pelayanan serta dukungan CBN dalam kehidupan spiritual.

CBN juga membangun sebuah system mailing list yang bertujuan untuk

memudahkan dan meningkatkan efektivitas dalam penyampaian informasi melalui

fasilitas email yang telah didaftarkan oleh para pengguna website jawaban.com.

system ini sangat memudahkan seluruh member mailing list karena mereka dapat

memperoleh informasi secara langsung melalaui email mereka masing-masing. Hal

ini dilakukan untuk meningkatkan komunikasi secara pribadi dan memperoleh data

personal setiap member. Data – data tersebut digunakan oleh pihak marketing untuk

dapat secara langsung berkomunikasi aktif dua arah (follow up), dan memperoleh

Page 4: Mail Tracking Faber KP

tingkat keaktifan setiap member dan kehandalan penyebaran informasi melalui

mailing list.

Pihak marketing CBN hanya dapat memperoleh berapa banyak jumlah email

yang telah dikirimkan pada satu subject topik mailing list setiap waktunya, sedangkan

informasi tingkat keberhasilan penyampaian informasi (berupa; jumlah email yang

dibuka, jumlah link reveral yang diklik dalam satu badan email, jumlah email yang

gagal dikirim, dan jumlah member yang tidak berlangganan lagi) tidak dapat

diperoleh dengan menggunakan system pengiriman email standard. Hal ini membuat

pihak marketing menggunakan layanan pihak ketiga sebagai protokol pengiriman

email mailing list ( dalam hal ini menggunakan JangoSMTP) untuk melakukan

proses email tracking. Seluruh data hasil mail tracking dapat diakses secara langsung

kepanel JangoSMTP, ataupun dengan mengambil data tersebut secara real-time

dengan menggunakan fasilitas API yang telah disediakan oleh JangoSMTP.

Keterbatasan penyediaan informasi yang terdapat pada panel JangoSMTP untuk

menampilkan kolom ataupun field data yang dibutuhkan oleh pihak marketing dalam

penyusunan laporan menyebabkan pihak management CBN membutuhkan suatu

sistem pada server lokal yang dapat menghasilkan dan mengolah data hasil mail

tracking sesuai dengan kebutuhan marketing.

Uraian latar belakang menjelaskan keterbatasan sistem mailing list yang ada

di CBN. oleh karena itu dibutuhkan “SISTEM MAIL TRACKING MONITORING

DENGAN MENGGUNAKAN JANGOSMTP” sebagai solusi dari permasalahan

yang telah diuraikan.

1.2 Perumusan masalah

Perumusan masalah dari uraian latar belakang adalah sebagai berikut :

“Bagaimana membangun Sistem Mail Tracking Monitoring dengan

Menggunakan JangoSMTP”.

Page 5: Mail Tracking Faber KP

1.3 Maksud dan Tujuan

1.3.1 Maksud

Maksud dari dilakukannya kerja praktek ini adalah untuk membangun

suatu Sistem Mail Tracking Monitoring dengan Menggunakan Jango SMTP

yang dapat membantu pihak Marketing CBN.

1.3.2 Tujuan

Tujuan dari pelaksanaan dan pembuatan laporan kerja praktek ini

adalah :

1. Memudahkan pihak marketing mengelolah data informasi mail

tracking.

2. Memudahkan pihak marketing dalam penyusunan laporan.

3. Mengetahui tingkat keberhasilan dalam penyampaian informasi.

4. Merancang dan membangun suatu aplikasi yang mudah dikembangkan

untuk kebutuhan perusahaan pada masa mendatang.

1.4 Batasan Masalah

Perancangan Sistem mail Tracking Monitoring CBN mempunyai batasan

masalah sebagai berikut :

1. User yang memiliki hak akses dalam menjalankan dan menggunakan aplikasi

ini adalah pihak marketing.

2. Fungsionalitas dari perancangan aplikasi ini meliputi : paging, grouping, filter

searching dan report.

3. Keluaran (output) dari aplikasi Mail tracking Monitoring System CBN terdiri

dari laporan data harian, mingguan dan bulanan sebagai hasil.

Page 6: Mail Tracking Faber KP

4. Perangkat lunak yang digunakan untuk membangun sistem ini sebagai tools

dalam pemrograman adalah PHP, manipulasi dan penjelajah query SQL yang

digunakan adalah adalah SQL yog 9.6.3 Community , editor yang digunakan

adalah Netbeans 7.2 ,library yang digunakan dalam pencetakan laporan

adalah fpdf 4.1.1,serta sistem operasi yang digunakan adalah Windows

7Ultimate.

5. Pemodelan sistem yang digunakan dalam tahap perancangan dan analisis

sistem adalah pemodelan berorientasi objek (OOP/Object Oriented

Programming), dengan menggunakan use case diagram, activity diagram,

sequence diagram, class diagram, sedangkan pemodelan dan perancangan

desain basis data menggunakan Entity Relationship Diagram (ERD).

6. Sistem yang dibangun merupakan sistem berbasis client-server dimana

membutuhkan jaringan komunikasi antar komputer.

7. Perangkat keras yang dibutuhkan dalam implementasi sistem (Hardware

Requirement) adalah :

- Pentium IV 2,8 GHz atau yang sederajat

- Memori RAM 1 GigaByte

- Hardisk Free Space disk 700Mb

- VGA 64 bit , memori 1 GigaByte (share ataupun dedicated)

- Monitor 15’ LCD

Page 7: Mail Tracking Faber KP

1.5 Metode Penelitian

Metode penelitian yang digunakan dalam penyusunan laporan kerja praktek

ini adalah sebagai berikut :

1.5.1 Tahap Pengumpulan Data

Beberapa metode yang digunakan dalam tahap pengumpulan data

yang akan digunakan sebagai data fakta yang akan membantu dalam tahap

pembuatan perangkat lunak adalah sebagai berikut :

1. Studi Literatur (Studi Pustaka)

Metode pengumpulan data dilakukan dengan cara mengumpulkan

literatur, jurnal, paper, dan berbagai media lainnya yang berisi tentang

teori-teori pendukung yang memiliki kaitan/hubungan dengan judul

penelitian.

2. Observasi

Metode pengumpulan data dilakukan dengan mengamati secara langsung

kejadian dan fakta yang terjadi yang berhubungan dengan permasalahan

yang diambil. Dalam hal ini, observasi dilakukan di CBN

3. Wawancara

Metode pengumpulan data dilakukan dengan mengadakan tanya-jawab

secara langsung dan bertatap muka dengan sumber informasi yang

berkaitan dengan permasalahan yang sedang ditinjau. Dalam hal ini,

wawancara dilakukan dengan pembimbing kerja praktek sebagai senior

programmer dan system analyst, serta mengikut-sertakan pihak marketing.

4. Teknik Khusus

Pada pengumpulan data yang dilakukan, penyusun juga menggunakan

teknik khusus, dimana teknik pengumpulan data ini dilakukan dengan cara

mengumpulkan formulir-formulir dan contoh data yang digunakan oleh

perusahaan CBN dalam proses Pembangunan Aplikasi Mail Tracking

Monitoring System.

Page 8: Mail Tracking Faber KP

1.5.2 Tahap Pembuatan Perangakat Lunak

Teknik analisis data dan perancangan sistem dalam pembuatan

perangkat lunak menggunakan paradigma perangkat lunak secara waterfall,

yang meliputi beberapa proses diantaranya:

a. Rekayasa sistem

Merupakan bagian terpenting dalam pengerjaan suatu proyek

pembuatan dan pengembangan perangkat lunak yang dimulai dengan

mencari dan menetapkan berbagai kebutuhan dari semua elemen yang

dibutuhkan.

b. Analisis

Merupakan tahap menganalisis hal-hal yang diperlukan dalam

pelaksanaan proyek pembuatan perangkat lunak. Pada tahap ini akan

dilakukan perancangan fungsional sistem dan basis data yang

digunakan.

c. Design

Merupakan tahap penerjemahan dari hasil data yang telah dianalisis

sebelumnya kedalam bentuk yang mudah dimengerti oleh user dalam

bentuk perancangan tampilan setiap form, struktur menu, dan lainnya

yang keseluruhannya dirancang berdasarkan prinsip-prinsip umum

perancangan user interface dan model konseptual yang ada.

d. Coding

Tahap penerjemahan data atau pemecahan masalah yang telah

dirancang kedalam suatu bentuk aplikasi nyata dengan menggunakan

bahasa pemrograman tertentu.

e. Testing

Merupakan tahap pengujian terhadap perangkat lunak yang dibangun

dengan melihat reaksi dari suatu aksi yang dilakukan terhadap

Page 9: Mail Tracking Faber KP

aplikasi, sampai perangkat lunak yang dibangun sesuai dengan

kebutuhan sistem.

f. Maintenance

Tahap akhir dimana suatu perangkat lunak yang sudah selesai dapat

mengalami perubahan–perubahan, penambahan, atau perbaikan sesuai

dengan permintaan user.

Gambar 1 – Model pengembangan perangkat lunak metode waterfall

Page 10: Mail Tracking Faber KP

1.6 Sistematika Penelitian

Pada bagian ini akan diuraikan sistematika penulisan yang disajikan dalam

Laporan Kerja Praktek yaitu sebagai berikut :

BAB I PENDAHULUAN

Dalam Bab ini menjelaskan mengenai latar belakang masalah, rumusan masalah,

maksud dan tujuan kerja praktek, batasan masalah, metode penelitian yang digunakan

dalam pelaksanaan kerja praktek, dan sistematika penulisan Laporan.

BAB II TINJAUAN PUSTAKA

Dalam Bab ini menguraikan data profil perusahaan tempat pelaksanaan kerja praktek

yang meliputi sejarah instansi, struktur dan jobdesc organisasi, dan badan hukum

instansi, selain itu bab ini juga akan menguraikan berbagai landasan teori pendukung

yang berhubungan dengan permasalahan yang ditinjau.

BAB III PEMBAHASAN

Pada Bab ini diuraikan mengenai analisis kebutuhan sistem, perancangan user

interface (tatap muka) dan implementasi dalam pembuatan aplikasi Email Tracking

Monitoring System PT. Multicommtech.

BAB IV KESIMPULAN DAN SARAN

Dalam Bab ini berisi tentang kesimpulan atau rangkuman dari laporan kerja praktek

dan saran-saran untuk pemeliharaan, pengembangan aplikasi yang dibangun.

Page 11: Mail Tracking Faber KP

BAB 2

TINJAUAN PUSTAKA

2.1 Profil Tempat Kerja Praktek

Secara singkat profil perusahaan dimana pelaksanaan kerja praktek dilakukan

adalah sebagai berikut :

Nama Perusahaan : Cahaya Bagi Negeri Indonesia

Alamat : Jl. Sriwijaya Kav. 5-7 Lippo Cikarang

Komisioner :

Presiden Direktur :

Jenis Bidang Usaha : Broadcasting dan Production House

Tanggal Berdiri : 11 April 1994

Legalitas Perusahaan :

Sertifikasi Manajerial :

Telepon / Fax : +6221 8990 5960/ +6221 8990 5961

Email : [email protected]

Alamat Website : www.CBN.Jawaban.com

2.1.1 Sejarah Instansi

Cahaya Bagi Negeri Indonesia (CBN Indonesia) hadir sejak tahun 1998 untuk

memberitakan kasih dan kabar baik melalui media dengan cara kreatif dan

kontekstual. Yayasan Cahaya Bagi Negeri adalah salah satu bentuk pelayanan CBN

WorldReach di Indonesia. Yayasan CBN mempunyai banyak program pelayanan.

Penayangan kesaksian-kesaksian melalui media televisi dan media lainnya menjadi

salah satu program andalannya. Program TV CBN yang menjadi tayangan utama dan

paling dikenal adalah Solusi yang telah 13 tahun tayang di Televisi Nasional-SCTV.

Berikut ini adalah program TV CBN Indonesia :

a. Solusi

Ditayangkan sejak Bulan Mei 1999, Solusi merupakan program TV rohani yang

bertahan paling lama dan tetap tayang di televisi nasional. Kesaksian kisah nyata

Page 12: Mail Tracking Faber KP

hidup telah menjadi inspirasi dan jawaban atas permasalahan hidup pemirsa yang

menyaksikan program televisi ini. Tayang di SCTV setiap Senin, 24.30 WIB

b. Solusi Life

Program yang dikemas untuk memenuhi kebutuhan spiritual masyarakat perkotaan.

Tayang setiap hari di TV Lokal Jabodetabek. Tayang di O'Channel TV (TV lokal di

Jabodetabek) Senin - Jumat, 22.00 WIB.

c. Dina Hiji Mangsa

Program TV Solusi yang dialihbahasakan ke dalam bahasa sunda, menceritakan kasih

dan kebaikan Tuhan. Ditayangkan di bandung dan sekitarnya.

d. Obat Malam Khusus Dewasa

Program untuk menjangkau masyarakat kalangan menengah-bawah. Kesaksian-

kesaksian hidup yang dikupas secara terbuka. Dengan musik dangdut dan talk show

membawakan topik-topik yang diminati oleh masyarakat kalangan menengah ke

bawah. Telah disaksikan oleh 10.770.411 penonton.

e. www.jawaban.com

Website kristen No 1 di Indonesia. Selama tahun 2010 Jawaban.com telah dikunjungi

lebih dari 3.249.182 pengunjung dengan rata-rata 9,1 page turns untuk setiap

pengunjung.

f. Sekolah Media CBN

Sekolah Media CBN Hadir dengan visi melahirkan profesional di bidang media, yang

memiliki hati untuk menjangkau bangsa dengan kasih Tuhan dan kerinduan menjadi

garam dalam dunia broadcasting. Mendatangkan pengajar dan praktisi media yang

memiliki standar internasional, serta senantiasa dikombinasikan dengan pengajaran

karakter bagi para siswanya. Sepanjang tahun 2010, terdapat 85 praktisi media yang

dihasilkan Sekolah Media CBN.

Page 13: Mail Tracking Faber KP

2.1.2 Visi dan Misi Cahaya Bagi Negeri Indonesia

2.1.2.1 Visi Perusahaan

Memberitakan kasih Tuhan sehingga bangsa Indonesia mendengar kabar baik.

2.1.2.2 Misi Perusahaan

Cahaya Bagi Negeri Indonesia memiliki misi : “ Memberitakan dan

menyatakan kasih Tuhan kepada bangsa Indonesia melalui pelayanan media dan

pelayanan kemanusiaan dengan cara yang kreatif dan kontekstual ”.

2.1.3 Logo Instansi

CBN adalah suatu perusahaan yang bergerak di bidang Broadcasting dan

Production House. Perusahaan ini sudah banyak melakukan pembuatan film.

Dengan fakta tersebut, dapat disimpulkan bahwa CBN merupakan perusahaan

Broadcasting dan Production House yang terpercaya baik dari segi kualitas kerja dan

Pembuatan film. Berikut ini adalah logo instansi/perusahaan dari CBN :

Keterangan logo :

Logo CBN Merupakan singkatan Cahaya Bagi Negeri

Arti dan maksud pemakaian warna pada logo instansi tersebut adalah :

- Merah : Mencerminkan Keuletan dan ketegasan serta keberanian dalam

menghadapi berbagai macam keadaan.

- Kuning : Mencerrminkan Haparan dan Optimis dalam menyatakan kasih

Tuhan.

Gambar 2 Logo CBN

Page 14: Mail Tracking Faber KP

Regional Director

HRD & GA

Manager

Production Manager

Media & Patner

Relations Manager

Finance & Accounting Manager

IT & New Media

ManagerBME

Manager

Media School

Manager

Executive Secretary

IT & New Media

Manager

Chief Engineer

Help Desk

Equipement Custodian

Purchasing

Coordinator

Coordinator Studio

Assitant Coordinator

Studio

Coordinator Programming

Programmer Web Designer

Network Administra

torAdministrasi

Support

Trainer

IT &NewMedia Coordinator

Web Content & Marketing

Web & Mobile Content

2.1.4 Sturktur Organisasi dan Job Description

Divisi IT and New Media CBN Indonesia memiliki lingkup pekerjaan antara

lain Engineer, Coordinator Studio, Programming (programmer and web designer),

IT and New Media (web content, video editor) dan Network Administrator . Dalam

pelaksanaan kerja praktek dilakukan perancangan dan pembuatan sistem aplikasi mail

tracking monitoring.

Struktur organisasi di CBN Indonesia dan Divisi IT and Newmedia Cahaya

Bagi Negeri Indonesia Lippo Cikarang dapat dilihat pada Gambar 3 dan 4.

Gambar 3 Struktur Organisasi di CBN Indonesia Lippo Cikarang

Gambar 4 Struktur Organisasi di Divisi IT & NewMedia CBN Indonesia Lippo Cikarang

Page 15: Mail Tracking Faber KP

2.1.5 Deskripsi Pekerjaan

Secara garis besar, pekerjaan atau jobdesk yang telah dilakukan sebagai web

programmer di Divisi IT and New Media dapat dibagi dalam 7 tahap:

- Updating & Validating API Response for Jango Mail Tracking :

Melakukan pengecekan dan validating ke API di Jango Mail Tracking.

- Create module for each fetch all mail tracking data : membuat modul

untuk pengambilan data mail tracking.

- Create module for filtering mail tracking data based on specific field

categories that has been selected : membuat modul untuk filtering data

berdasarkan kategori yang di inginkan.

- Create module for grouping mail tracking data based on selected field

that has been determind : membuat modul untuk group data berdasarkan

field yang di seleksi.

- Create reporting such as pdf & graph/chart libraries and modules for all

step process data on mail tracking data grouping/filtering/summaries

process, can be printed : membuat laporan atau report dalam bentuk pdf

atau grafik untuk semua proses awal yang dilakukan, dan report dapat di

cetak.

- Add functional system to provide summarizing data : membuat fungsi

untuk ringkasan data.

- Create user documentation for mail monitoring system ver 1.0 : membuat

dokumentasi penguna sistem versi 1.0

Dalam menjalankan seluruh proses ini, didapatkan bimbingan dari

pembimbing kerja praktek baik dilapangan maupun pada teknik penulisan laporan

dikampus.

Page 16: Mail Tracking Faber KP

2.1.6 Jadwal Kerja

Kerja praktek dilaksanakan dari tanggal 05 Agustus 2013 sampai dengan

tanggal 05 September 2013 selama 4 minggu. Waktu kerja praktek adalah dari hari

Senin sampai dengan Jumat, pukul 08.00 sampai dengan pukul 17.00 WIB.

Adapun detail kegiatan kerja praktek dalam skala harian dapat dilihat pada

lampiran. Secara keseluruhan, realisasi jadwal kerja sesuai dengan rencana yang telah

disusun. Proses analisis, perancangan, pengujian, dan dokumentasi dilakukan secara

bersama-sama dengan para pembimbing yang ada di kantor.

2.2 Landasan Teori

Pada landasan teori ini akan dibahas teori-teori yang dapat membantu

memecahkan permasalahan yang ada. Teori-teori tersebut meliputi konsep dasar dan

definisi-definisi yang berkaitan dengan perangkat lunak yang digunakan serta faktor-

faktor pendukung dalam pelaksanaan perancangannya.

2.2.1 Konsep Dasar Sistem Informasi

2.2.1.1 Defenisi sistem

Terdapat dua kelompok pendekatan dalam mendefinisikan sistem, yaitu yang

menekankan kepada prosedur dan menekankan kepada komponen atau elemen.

Pendekatan sistem yang lebih menekankan pada prosedur mendefinisikan sebagai

berikut :

“Suatu sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling

berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau

menyelesaikan suatu sasaran yang tertentu.” (Jogiyanto, H.M., 2001 : 1).

Pendekatan sistem yang menekankan pada komponen atau elemen-elemen

mendefinisikan sebagai berikut :

“Sistem adalah elemen-elemen yang berinteraksi untuk mencapai suatu tujuan

tertentu.” (Jogiyanto, H.M., 2001:1).

Page 17: Mail Tracking Faber KP

Sistem informasi didefinisikan oleh Robert A. Leitch dan K. Roscoe Davis

sebagai berikut:

“Sistem informasi adalah suatu sistem didalam 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.” JOG[4].

Sistem informasi merupakan suatu sistem di dalam organisasi yang

mempertemukan kebutuhan pengolahan data (kejadian), mendukung operasi atau

proses, menyediakan laporan atau dokumen yang diperlukan. Suatu sistem informasi

yang dibuat berisi himpunan terintegrasi dari komponen manual dan komponen

terkomputerisasi yang bertujuan untuk mengumpulkan data, menyimpan data dan

menghasilkan informasi untuk pemakai.

Adapun pengenalan untuk sistem informasi biasanya terdiri dari :

1. Memahami sistem yang ada dengan cara menyampaikan informasi dan

menganalisis sistem yang ada.

2. Mendefinisikan kebutuhan sistem baru yaitu perimbangan, perencanaan,

kebutuhan keluaran, masukan, simpanan, pengolahan dan mendefinisikan

kriteria penilaian.

3. Proses desain sistem yaitu desain keluaran, desain masukan, desain file,

desain pengolahan sistem, pengendalian sistem dan dokumentasi.

4. Pengembangan dan implementasi sistem, yaitu menilai perangkat lunak,

dokumentasi sistem dan pelatihan, pengetesan sistem dan implementasi

sistem.

2.2.1.2 Komponen Sistem Informasi

John Burch dan Gary Grudnitski mengemukakan bahwa sistem informasi

terdiri dari komponen-komponen yang disebutnya dengan istilah blok bangunan

(building block), yaitu blok masukan (input block), blok model (model block), blok

keluaran (output block), blok teknologi (technologi block), blok basis data (database

block), dan blok kendali (komputers block). Sebagai suatu sistem, keenam blok

Page 18: Mail Tracking Faber KP

tersebut masing-masing saling berinteraksi satu dengan yang lainnya membentuk satu

kesatuan untuk mencapai sasarannya.

1. Blok Masukan

Input mewakili data yang masuk ke dalam sistem informasi. Input disini termasuk

metode-metode dan media untuk menangkap data yang akan dimasukkan, yang

dapat berupa dokumen-dokumen dasar.

2. Blok Model

Blok ini terdiri dari kombinasi prosedur, logika dan model matematik yang akan

memanipulasi data input dan data yang tersimpan di basis data dengan cara yang

sudah tertentu untuk menghasilkan keluaran yang diinginkan.

3. Blok Keluaran

Produk dari sistem informasi adalah keluaran yang merupakan informasi yang

berkualitas dan dokumentasi yang berguna untuk semua tingkatan manajemen

serta semua pemakai sistem.

4. Blok Teknologi

Teknologi merupakan “kotak alat” (tool box) dalam sistem informasi. Teknologi

digunakan untuk menerima output, menjalankan model, menyimpan dan

mengakses data, menghasilkan dan mengirimkan keluaran dan membantu

pengendalian dari sistem secara keseluruhan. Teknologi terdiri dari 3 bagian

utama, yaitu teknisi (humanware atau brainware), perangkat lunak (software),

dan perangkat keras (hardware). Teknisi dapat berupa orang-orang yang

mengetahui teknologi dan membuatnya dapat beroperasi. Misalnya teknisi adalah

operator komputer, pemrogram, operator pengolah kata, spesialis telekomunikasi,

analis sistem, penyimpanan data dan lain sebagainya.

5. Blok Basis Data

Basis data (database) merupakan kumpulan dari data yang saling berhubungan

satu dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan

perangkat lunak untuk memanipulasinya. Data perlu disimpan di dalam basis data

untuk keperluan penyediaan informasi lebih lanjut. Data di dalam basis data perlu

diorganisasikan sedemikian rupa, supaya informasi yang dihasilkan berkualitas.

Page 19: Mail Tracking Faber KP

Organisasi basis data yang baik juga berguna untuk efisiensi kapasitas

penyimpanannya. Basis data diakses atau dimanipulasi dengan menggunakan

perangkat lunak paket yang disebut dengan DBMS (Database Management

Systems).

6. Blok Kendali

Banyak hal yang dapat merusak sistem informasi, seperti misalnya bencana alam,

api, temperatur, air, debu, kecurangan-kecurangan, kegagalan-kegagalan sistem

itu sendiri, kesalahan-kesalahan, ketidak efisienan, sabotase dan lain sebagainya.

Beberapa pengendalian perlu dirancang dan diterapkan untuk meyakinkan bahwa

hal-hal yang dapat merusak sistem dapat dicegah ataupun bila terlanjur terjadi

kesalahan-kesalahan dapat langsung cepat diatasi.

2.2.2 Model Proses Rekayasa Perangkat Lunak

Model proses untuk rekayasa perangkat lunak dipilih berdasarkan sifat

aplikasi dan proyeknya, metode dan alat-alat bantu yang akan dipakai, dan kontrol

serta penyampaian yang dibutuhkan. Perkembangan perangkat lunak bisa dianggap

sebagai lingkaran pemecahan masalah dimana terdapat empat keadaan berbeda, yaitu

status quo, definisi masalah, perkembangan teknis memecahkan masalah di

keseluruhan aplikasi dari banyak aplikasi, dan integrasi pemecahan menyampaikan

hasil kepada siapa yang membutuhkan pertama kali. Bermacam-macam model proses

yang berbeda pada perangkat lunak sebagai berikut:

1. Model Sekuensial Linier atau Waterfall

Sekuensial linier mengusulkan sebuah pendekatan kepada perkembangan

perangkat lunak yang sistematik dan sekuensial yang mulai pada tingkat dan

kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan

pemeliharaan.

2. Model Prototipe

Prototyping paradigma dimulai dengan pengumpulan kebutuhan.

Pengembang dan pelanggan bertemu dan mendefinisikan obyektif

keseluruhan dari perangkat lunak, mengidentifikasi segala kebutuhan yang

Page 20: Mail Tracking Faber KP

diketahui, dan area garis besar dimana definisi lebih jauh merupakan

keharusan kemudian dilakukan “perancangan kilat”. Perancangan kilat

berfokus pada penyajian dari aspek-aspek perangkat lunak tersebut,yang akan

nampak bagi pelanggan / pemakai (contohnya pendekatan input dan format

output).

3. Model RAD

Rapid Application Development (RAD) adalah sebuah model proses

perkembangan perangkat lunak sekuensial linier yang menekankan siklus

perkembangan yang sangat pendek. Model RAD ini merupakan sebuah

adaptasi “kecepatan tinggi” dari model sekuensial linier di mana

perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi

berbasis komponen.

4. Model Proses Perangkat Lunak Evolusioner

Model evolusioner adalah model iteratif. Model itu ditandai dengan tingkah

laku yang memungkinkan perekayasa perangkat lunak mengembangkan versi

perangkat lunak yang lebih lengkap sedikit demi sedikit.

a. Model Pertambahan

Model inkeremental menggabungkan elemen-elemen model sekuensial

linier (diaplikasikan secara berulang) dengan filosofi prototipe iteratif.

Model pertambahan memakai urutan-urutan linier di dalam model yang

membingungkan, seiring dengan laju waktu kalender. Model pertambahan

berfokus pada penyampaian produk operasional dalam setiap

pertambahannya.

b. Model Spiral

Model spiral (spiral model) adalah model proses perangkat lunak yang

evolusioner yang merangkai sifat iteratif dari prototipe dengan cara

komputer dan aspek sistematis dari model sekuensial linier.

c. Model Rakitan Komponen

Model ratikan komponen menggabungkan beberapa karakteristik model

spiral. Model ini bersifat evolusioner, sehingga membutuhkan pendekatan

Page 21: Mail Tracking Faber KP

iteratif untuk mencapai perangkat lunak. Tetapi model rakitan komponen

merangkai aplikasi dari komponen perangkat lunak sebelum dipaketkan

(kadang-kadang disebut “kelas”).

d. Model Perkembangan Konkuren

Model proses yang konkuren dapat disajikan secara skematis sebagai

sederetan aktivitas teknik mayor, tugas-tugas, dan keadaannya yang lain.

Contohnya aktivitas rekayasa yang dibatasi untuk model spiral dipenuhi

dengan melakukan tugas-tugas sebagai berikut: prototyping dan atau

pemodelan analisis, spesifikasi kebutuhan, dan rancangan.

5. Model Formal

Model metode formal mencakup sekumpulan aktivitas yang membawa kepada

spesifikasi matematis perangkat lunak komputer. Metode formal

memungkinkan perekayasa perangkat lunak untuk mengkhususkan,

mengembangkan, dan memverifikasi sistem berbasis komputer dengan

menggunakan notasi matematis yang tepat.

2.2.3 Konsep Basis Data

2.2.3.1 Defenisi Basis Data

Istilah basis data banyak menimbulkan interpretasi yang berbeda. Anthoni J.

Fabbri dan A. Robert Schwab, mendefinisikan basis data sebagai berikut :

“Basis data adalah sistem berkas terpadu yang dirancang terutama untuk

meminimalkan pengulangan data” JOG[4].

Menurut George Tsu-der Chou, basis data dapat didefinisikan sebagai berikut:

“Basis data sebagai kumpulan informasi bermanfaat yang diorganisasikan ke

dalam tatacara yang khusus”. JOG[4]

Basis data dimaksudkan untuk mengatasi masalah pada sistem yang memakai

pendekatan berbasis berkas. Sistem basis data adalah suatu sistem menyusun dan

mengelola record-record menggunakan komputer untuk menyimpan atau merekam

serta memelihara data opersional lengkap sebuah organisasi/perusahaan sehingga

Page 22: Mail Tracking Faber KP

mampu menyediakan informasi yang optimal yang diperlukan pemakai untuk proses

mengambil keputusan.

Untuk mengelola basis data diperlukan perangkat lunak yang disebut DBMS.

DBMS adalah perangkat lunak sistem yang memungkinkan para pemakai membuat,

memelihara, mengontrol, dan mengakses basis data dengan cara yang praktis dan

efisien.

Adapun penyebab mengapa diperlukan database adalah sebagai berikut :

1. Salah satu komponen penting dalam sistem informasi, karena merupakan

dasar dalam menyediakan informasi.

2. Menentukan kualitas informasi : akurat, tepat pada waktunya danrelevan.

3. Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan

dengan biaya mendapatkanya.

4. Mengurangi duplikasi data (data redudancy).

5. Hubungan data dapat ditingkatkan.

6. Mengurangi pemborosan tempat simpanan luar.

2.2.4 Metodologi Yang Digunakan

Metodologi yang digunakan adalah Object Oriented dengan menggunakan

Unified Modeling Language (UML), Sehingga diharapkan hasil yang akan

dikeluarkan tidak jauh dari apa yang telah dirancang.

2.2.4.1 Konsep Dasar Object Oriented

Romi Satria Wahono menjelaskan pengertian Object Orientation sebagai

berikut :

Teknologi baru yang didasarkan pada objek-objek dan kelas–kelas.

Cara berfikir untuk mengorganisir software sebagai kumpulan objek yang

bekerjasama dengan struktur data dan kelakuan (behaviour).

Page 23: Mail Tracking Faber KP

Sebuah abstraksi dari dunia nyata berdasarkan objek dan keterkaitan mereka

dengan objek lain.

Pengertian Objek itu sendiri menurut Romi harus mencakup :

Objek adalah benda atau konsep. Bisa benda dunia nyata atau konsep atau

abstraksi dari benda atau konsep dijelaskan sebagai representasi dari software.

Objek memiliki atribut dan kelakuan (behavior).

Sedangkan pengertian dari kelas itu sendiri adalah :

Kelas adalah deskripsi dari koleksi objek objek dengan kesamaan atribut dan

kelakuan.

Secara singkatnya, pengertian atau spesifikasi dari kelas mencakup pengertian

dari atribut comprising the state, methode mengimplementasikan kelakuan

(behavior), dan bagaimana menangani pembuatan dan penghancuran dari

sebuah objek.

2.2.4.2 Konsep Dasar Unified Modeling Language

Sejarah UML sendiri cukup panjang dimulai pada bulan Oktober 1994 Booch,

Rumbaugh dan Jacobson, yang merupakan tiga tokoh yang boleh dikata

metodologinya banyak digunakan mempelopori usaha untuk penyatuan metodologi

pendesainan berorientasi objek. Pada tahun 1995 direlease draft pertama dari UML

(versi 0.8). Sejak tahun 1996 pengembangan tersebut dikoordinasikan oleh Object

Management Group.

Tahun 1997 UML versi 1.1 muncul, dan saat ini versi terbaru adalah versi 1.5

yang dirilis bulan Maret 2003. Booch, Rumbaugh dan Jacobson menyusun tiga buku

serial tentang UML pada tahun 1999. Sejak saat itulah UML telah menjelma menjadi

standar bahasa pemodelan untuk aplikasi berorientasi objek.

Sedangkan Sri Dharwiyanti dan Romi Satria Wahono menjelaskan Unified

Modelling Language (UML) adalah sebuah "bahasa" yang telah menjadi standar

dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti

lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.

Page 24: Mail Tracking Faber KP

Diagram–diagram yang digunakan untuk medefinisikan UML adalah sebagai

berikut :

2.2.4.2.1 Use Case Diagram

Use case diagram menggambarkan fungsionalitas yang diharapkan dari

sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan

“bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor

dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke

sistem, meng-create sebuah daftar belanja, dan sebagainya.

Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang

berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Use case

diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah

sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk

semua feature yang ada pada sistem.

Sebuah use case dapat meng-include fungsionalitas use case lain sebagai

bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-

include akan dipanggil setiap kali use case yang meng-include dieksekusi secara

normal.

Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga

duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas

yang common.

Sebuah use case juga dapat meng-extend use case lain dengan behavior-nya

sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use

case yang satu merupakan spesialisasi dari yang lain.

2.2.4.2.2 Class Dagram

Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan

sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek.

Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan

layanan untuk memanipulasi keadaan tersebut (metoda/fungsi).

Page 25: Mail Tracking Faber KP

Class diagram menggambarkan struktur dan deskripsi class, package dan

objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan

lain-lain.

Class memiliki tiga area pokok :

1. Nama (dan stereotype).

2. Atribut.

3. Metoda.

Atribut dan metoda dapat memiliki salah satu sifat berikut :

Private, tidak dapat dipanggil dari luar class yang bersangkutan.

Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak

yang mewarisinya.

Public, dapat dipanggil oleh class mana saja.

Class dapat merupakan implementasi dari sebuah interface, yaitu class

abstrak yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan,

tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian

interface mendukung resolusi metoda pada saat run-time.

Sesuai dengan perkembangan class model, class dapat dikelompokkan

menjadi package. Kita juga dapat membuat diagram yang terdiri atas package.

Adapun hubungan antar Class yang dapat terbentuk antara lain:

1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class

yang memiliki atribut berupa class lain, atau class yang harus mengetahui

eksistensi class lain. Panah navigability menunjukkan arah query antar class.

2. Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”).

3. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari

class lain dan mewarisi semua atribut dan metoda class asalnya dan

menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang

diwarisinya. Kebalikan dari pewarisan adalah generalisasi.

Page 26: Mail Tracking Faber KP

4. Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing dari satu

class kepada class lain. Hubungan dinamis dapat digambarkan dengan

menggunakan sequence diagram yang akan dijelaskan kemudian.

2.2.4.2.3 Statechart Diagram

Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu

state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli yang

diterima. Pada umumnya statechart diagram menggambarkan class tertentu (satu

class dapat memiliki lebih dari satu statechart diagram).

Dalam UML, state digambarkan berbentuk segiempat dengan sudut membulat

dan memiliki nama sesuai kondisinya saat itu. Transisi antar state umumnya memiliki

kondisi guard yang merupakan syarat terjadinya transisi yang bersangkutan,

dituliskan dalam kurung siku. Action yang dilakukan sebagai akibat dari event

tertentu dituliskan dengan diawali garis miring. Titik awal dan akhir digambarkan

berbentuk lingkaran berwarna penuh dan berwarna setengah.

2.2.4.2.4 Activity Diagram

Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang

sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin

terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan

proses paralel yang mungkin terjadi pada beberapa eksekusi.

Activity diagram merupakan state diagram khusus, dimana sebagian besar

state adalah action dan sebagian besar transisi di-trigger oleh selesainya state

sebelumnya (internal processing). Oleh karena itu activity diagram tidak

menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem)

secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari

level atas secara umum.

Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas

menggambarkan proses yang berjalan, sementara use case menggambarkan

bagaimana aktor menggunakan sistem untuk melakukan aktivitas.

Page 27: Mail Tracking Faber KP

Sama seperti state, standar UML menggunakan segiempat dengan sudut

membulat untuk menggambarkan aktivitas. Decision digunakan untuk

menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-

proses paralel (fork dan join) digunakan titik sinkronisasi yang dapat berupa titik,

garis horizontal atau vertikal.

Activity diagram dapat dibagi menjadi beberapa object swimlane untuk

menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu.

2.2.4.2.5 Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di

sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang

digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertikal (waktu)

dan dimensi horizontal (objek-objek yang terkait).

Sequence diagram biasa digunakan untuk menggambarkan skenario atau

rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk

menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut,

proses dan perubahan apa saja yang terjadi secara internal dan output apa yang

dihasilkan.

Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message

digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase

desain berikutnya, message akan dipetakan menjadi operasi/metoda dari class.

Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali

dengan diterimanya sebuah message.

Untuk objek-objek yang memiliki sifat khusus, standar UML mendefinisikan

icon khusus untuk objek boundary, controller dan persistent entity.

2.2.4.2.6 Collaboration Diagram

Collaboration diagram juga menggambarkan interaksi antar objek seperti

sequence diagram, tetapi lebih menekankan pada peran masing-masing objek dan

bukan pada waktu penyampaian message. Setiap message memiliki sequence number,

Page 28: Mail Tracking Faber KP

dimana message dari level tertinggi memiliki nomor 1. Messages dari level yang

sama memiliki prefiks yang sama.

2.2.4.2.7 Component Diagram

Component diagram menggambarkan struktur dan hubungan antar komponen

piranti lunak, termasuk ketergantungan (dependency) di antaranya. Komponen piranti

lunak adalah modul berisi code, baik berisi source code maupun binary code, baik

library maupun executable, baik yang muncul pada compile time, link time, maupun

run time. Umumnya komponen terbentuk dari beberapa class dan/atau package, tapi

dapat juga dari komponen-komponen yang lebih kecil. Komponen dapat juga berupa

interface, yaitu kumpulan layanan yang disediakan sebuah komponen untuk

komponen lain.

2.2.4.2.8 Deployment Diagram

Deployment/physical diagram menggambarkan detail bagaimana komponen

di-deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin,

server atau piranti keras), bagaimana kemampuan jaringan pada lokasi tersebut,

spesifikasi server, dan hal-hal lain yang bersifat fisikal.

Sebuah node adalah server, workstation, atau piranti keras lain yang

digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan

antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam

diagram ini.

Page 29: Mail Tracking Faber KP

2.2.5 Teknik Pengujian Perangkat Lunak

Pengujian perangkat lunak adalah elemen kritis dari jaminan kualitas

perangkat lunak dan mempesentasikan kajian pokok dari spesifikasi, desain, dan

pengkodean.

2.2.5.1 Dasar Pengujian Perangakat Lunak

Pengujian menyajikan anomali yang menarik bagi perekayasa perangkat

lunak. Pada proses perangkat lunak, perekayasa pertama-tama berusaha membangun

perangkat lunak dari konsep abstrak ke implementasi yang dapat dilihat, baru

dilakukan pengujian. Perekayasa menciptakan sederetan test case yang dimaksudkan

untuk “membongkar” perangkat lunak yang sudah dibangun. Pada dasarnya

pengujian merupakan salah satu langkah dlam proses rekayasa perangkat lunak yang

dianggap sebagai hal yang destruktif daripada konstruktif.

2.2.5.2 Sasaran-sasaran Pengujian

Dalam buku klasiknya mengenai pengujian perangkat lunak, Glen Myers

menyatakan sejumlah aturan yang berfungsi sebagai sasaran pengujian:

1. Pengujian adalah proses eksekusi suatu program dengan meksud menemukan

kesalahan.

2. Test case yang baik adalah test case yang memiliki probabilitas tinggi untuk

menemukan kesalahan yang belum ditemukan sebelumnya.

3. Pengujian yang sukses adalah pengujian yang mengungkap semua kesalahan

yang belum pernah ditemukan sebelumnya.

2.2.5.3 Prinsip Pengujian

Sebelum mengaplikasikan metode untuk mendesain test case yang efektif,

perekayasa harus memahami prinsip dasar yang menuntun pengujian perangkat

lunak. Davis mengusulkan serangkaian prinsip-prinsip pengujian diantaranya:

Page 30: Mail Tracking Faber KP

1. Semua pengujian harus dapat ditelusuri sampai kepesyaraan pelanggan.

2. Pengujian harus direncanakan lama sebelum pengujian itu mulai.

3. Prinsip pareto berlaku untuk pengujian perangkat lunak.

4. Pengujian harus mulai dari yang kecil dan yang berkembang kepengujian

yang lebih besar.

5. Pengujian yang mendalam tidak mungkin.

6. Untuk menjadi paling efektif pengujian harus dilakukan oleh pihak ketiga

yang independen.

2.2.5.4 Testabilitas

Testibilitas perangkat lunak adalah seberapa mudah program computer dapat

diuji. Karena pengujian sulitk, maka perlu diketahui apa yang harus dilakukan agar

manjadi lebih mudah. Cheklist berikut ini memberikan serangkaian karakteristik yag

membawa peragkat lunak yang dapat diuji.

1. Operabilitas, “semakin baik dia bekerja, semakin efisien dia diuji”.

2. Observabilitas, “apa yanganda lihat adalah apa yang anda uji”.

3. Kontrabilitas, semakin baik kita dapat mengontrol perangkat lunak semakin

banyak pengujian yang diotomatisasi dan dioptimalkan”.

4. Dekomposabilitas, “dengan mengontrol ruang lingkup pengujian, kita dapat

lebih cepat mengisolasi masalah dan melakukan pengujian kembali secara

lebih halus”.

5. Kesederhanaan, “semakin cepat yang diuji, semakin sedikit kita dapat

mengujinya”.

6. Stabilitas, “semakin sedikit perubahan, semakin gagguan dalam pengujian”.

7. Verifikasi, mengacu kepada rangkaian aktivitas yang memastikan bahwa

perangkat lunak secara tepatmengimplementasikan suatu fungsi terentu.

8. Validasi, mengacu pada rangkaian aktivitas berbeda yang memastikan bahwa

prangkat lunak yang dibangun dapat ditelusuri kepersyaratan pelanggan.

“Apakah kita membangun produk yang benar”.

Page 31: Mail Tracking Faber KP

2.2.5.5 Pengujian Black Box

Pengujian Black-box berfokus padapersyaratan fungsional perangkat lunak.

Dengan demikian, pengujian black-box memungkinkan perekayasa peangkat lunak

mendapatkan serangkaian kondisi input yang sepenuhnya semua persyaratan

fungsional untuk suatu program.

Pengujian black-box berusaha menemukan kesalahan dalam kategori sebagai berikut: 1. Fungsi-fungsi yang tidak benar atau hilang.

2. Kesalahan Interface.

3. Kesalahan dalam struktur data atau akses database eksternal.

4. Kesalahan kinerja.

5. Inisialisasi dan kesalahan terminasi.

2.2.6 Sarana Pendukung

Untuk perangkat lunak pendukung cara mengembangkannya melalui dua

macam aplikasi, karena komputer server dan client memerlukan aplikasi yang

berbeda. MySQL digunakan untuk pengelolaan database server dan Borland Delphi

sebagai aplikasi pemograman untuk mengembangkan aplikasi sistem client-server

pada komputer client. Kedua perangkat lunak ini dinilai merupakan perangkat lunak

yang lebih baik disbanding dengan yang lainya sebagai alat yang mengembangkan

aplikasi bagi sistem client-server.

2.2.6.1 PHP 5.4.7

PHP adalah singkatan dari PHP Hypertext Preprocessor. PHP adalah bahasa

scripting yang menyatu dengan HTML dan dijalankan pada server side. Artinya

semua sintaks yang kita berikan akan sepenuhnya dijalankan pada server sedangkan

yang dikirimkan ke browser hanya hasilnya saja.PHP Pertama kali ditemukan pada

1995 oleh seorang Software Developer bernama Rasmus Lerdrof. Ide awal PHP

adalah ketika itu Radmus ingin mengetahui jumlah pengunjung yang membaca

resume onlinenya. script yang dikembangkan baru dapat melakukan dua pekerjaan,

yakni merekam informasi visitor dan menampilkan jumlah pengunjung dari suatu

website dan sampai sekarang kedua tugas tersebut masih tetap populer digunakan

Page 32: Mail Tracking Faber KP

oleh dunia web saat ini. Kemudian, dari situ banyak orang dimilis mendiskusikan

script buatan Rasmus Lerdrof, hingga akhirnya rasmus mulai membuat sebuah

tool/script, bernama Personal Home Page(PHP).

Kebutuhan PHP sebagai tool yang serba guna membuat Lerdorf melanjutkan

untuk mengembangkan PHP hingga menjadi suatu bahasa tersendiri yang mungkin

dapat mengkonversikan data yang di inputkan melalui Form HTML menjadi suatu

variable, yang dapat dimanfaatkan oleh sistem lainnya. Untuk merealisasikannya,

akhirnya Lerdrof mencoba mengembangkan PHP menggunakan bahasa C ketimbang

menggunakan Perl. Tahun 1997, PHP versi 2.0 di rilis, dengan nama Personal Home

Page Form Interpreter (PHP-FI). PHP Semakin popular, dan semakin diminati oleh

programmer web dunia.

Rasmus Lerdrof benar-benar menjadikan PHP sangat populer, dan banyak

sekali Team Developer yang ikut bergabung dengan Lerdrof untuk mengembangkan

PHP hingga menjadi seperti sekarang, Hingga akhirnya dirilis versi ke 3-nya, pada

Juni1998, dan tercatat lebih dari 50.000 programmer menggunakan PHP dalam

membuat website dinamis.

Pengembangan demi pengembangan terus berlanjut, ratusan fungsi

ditambahkan sebagai fitur dari bahasa PHP, dan di awaal tahun 1999, netcraft

mencatat, ditemukan 1.000.000 situs di dunia telah menggunakan PHP. Ini

membuktikan bahwa PHP merupakan bahasa yang paling populer digunakan oleh

dunia web development. Hal ini mengagetkan para developernya termasuk Rasmus

sendiri, dan tentunya sangat diluar dugaan sang pembuatnya. Kemudian Zeev Suraski

dan Andi Gutsman selaku core developer (programmer inti) mencoba untuk menulis

ulang PHP Parser, dan diintegrasikan dengan menggunakan Zend scripting engine,

dan mengubah jalan alur operasi PHP. Dan semua fitur baru tersebut dirilis dalam

PHP4.

13 Juli 2004, evolusi PHP, PHP telah mengalami banyak sekali perbaikan

disegala sisi, dan wajar jika netcraft mengumumkan PHP sebagai bahasa web populer

didunia, karena tercatat 19 juta domain telah menggunakan PHP sebagai server side

scriptingnya. PHP saat ini telah Mendukung XML dan Web Services, Mendukung

Page 33: Mail Tracking Faber KP

SQLite. Tercatat lebih dari 19 juta domain telah menggunakan PHP sebagai server

scriptingnya. Benar-benar PHP sangat mengejutkan.

Yang menjadikan PHP berbeda dengan HTML adalah proses dari PHP itu

sendiri. HTML merupakan bahasa statis yang apabila kita ingin merubah

konten/isinya maka yang harus dilakukan pertama kali nya adalah, membuka file-nya

terlebih dahulu, kemudian menambahkan isi kedalam file tersebut. Beda hal nya

dengan PHP. Bagi anda yang pernah menggunakan CMS seperti wordpress atau

joomla yang dibangun dengan PHP tentunya, ketika akan menambahkan konten

kedalam website, anda tinggal masuk kedalam halaman admin, kemudian pilih new

artikel untuk membuat halaman/content baru. Artinya hal ini, seorang user tidak

berhubungan langsung dengan scriptnya. Sehingga seorang pemula sekalipun dapat

menggunakan aplikasi seperti itu.

2.2.6.2 Database Server MySQL

MySQL (My Structured Query Languange) adalah sebuah program

pembuat database yang bersifat open source dan berjalan di semua platform baik

Windows maupun Linux. Selain itu, MySQL juga merupakan program pengakses

database yang bersifat jaringan sehingga dapat digunakan untuk aplikasi Multi User

(Banyak Pengguna).

Sebagai sebuah program penghasil database, MySQL tidak dapat berjalan

sendiri tanpa adanya sebuah aplikasi lain (interface). Oleh karena itu harus ada

software pendukung antara lain PHP (Paper Hipertext Preposesor), Visual Delphi,

Visual Basic, Cold Fusion, dan lain-lain.

MySQL memiliki layer utama seperti layer DOS yaitu memiliki prompt utama

yang disebut mysql, tetapi sekarang ada suatu program dump yang dibuat seperti web

berjalan di bawah server database yang disebut PhpMyAdmin. Untuk memprogram

database lewat prompt harus paham dan hafal mengenai perintah query tetapi

dengan PhpMyAdmin pengaksesan akan terasa singkat dan lebih mudah karena

sudah ada Graphic User Interface (GUI) yang memudahkan dalam pembuatan

database serta pengaksesan perintah-perintah Query.

Page 34: Mail Tracking Faber KP

MySQL juga merupakan sebuah implementasi dari sistem manajemen

basisdata relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL

(General Public License). Setiap pengguna dapat secara bebas menggunakan MySQL,

namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan

yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep

utama dalam basisdata yang telah ada sebelumnya; SQL (Structured Query

Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk

pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data

dikerjakan dengan mudah secara otomatis.

Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja

pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh

pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai

peladen basis data, MySQL mendukung operasi basisdata transaksional maupun

operasi basisdata non-transaksional. Pada modus operasi non-transaksional, MySQL

dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen

basisdata kompetitor lainnya. Namun demikian pada modus non-transaksional tidak

ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-

transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas

data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk

kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan

modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja

MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-

transaksional.

MySQL memiliki beberapa keistimewaan antara lain :

1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti

Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih

banyak lagi.

2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat

lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara

gratis.

Page 35: Mail Tracking Faber KP

3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu

yang bersamaan tanpa mengalami masalah atau konflik.

4. ‘Performance tuning’, MySQL memiliki kecepatan yang menakjubkan dalam

menangani query sederhana, dengan kata lain dapat memproses lebih banyak

SQL per satuan waktu.

5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti

signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-

lain.

6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang

mendukung perintah Select dan Where dalam perintah (query).

7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level

subnetmask, nama host, dan izin akses user dengan sistem perizinan yang

mendetail serta sandi terenkripsi.

8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam

skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu

tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung

mencapai 32 indeks pada tiap tabelnya.

9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan

protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).

10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan

menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa

Indonesia belum termasuk di dalamnya.

11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai

aplikasi dan bahasa pemrograman dengan menggunakan fungsi API

(Application Programming Interface).

12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang

dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang

ada disertakan petunjuk online.

Page 36: Mail Tracking Faber KP

13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam

menangani ALTER TABLE, dibandingkan basis data lainnya semacam

PostgreSQL ataupun Oracle.

Terdapat berberapa API ( Application Programming Interface) tersedia yang

memungkinkan aplikasi-aplikasi computer yang ditulis dalam berbagai bahasa

pemrograman untuk dapat mengakses basis data MySQL antara lain : bahasa

pemrograman C, C++,C#, bahsa pemrograman Eiffel, Bahasa pemrograman

Smalltalk, bahasa pemrograman Python, Ruby, REAL basic dan Tcl. Sebuah

antarmuka ODBC memanggil MyODBC yang memungkinkan setiap bahasa

pemrograman yang mendukung ODBC untuk berkomunikasi dengan basisdata

MySQL. Kebanyakan kode sumberMySQL dalam ANSI C.

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.

2.2.6.3 Jango SMTP

Jango SMTP adalah layanan pengiriman email transaksional yang

menambahkan pelacakan dan otentikasi untuk email . Menggunakan layanan ini

memungkinkan untuk open tracking , click tracking , DomainKeys / DKIM signing ,

grouping , logging , dan pengiriman email yang ekstrim . Jango SMTP juga

mengediakan API dimana API ini digunakan untuk terkoneksi dengan server local

yang ada di perusahaan. API meliputi mengirim dan membuka email , mengklik URL

dalam email , sebuah berhenti berlangganan atau bounce dan compalints . melalui

jango SMTP pihak marketing akan dapat melihat informasi berapa jumlah mitra yang

bergabung dan tidak bergabung lagi, serta keefektivitasan mitra dalam membuka

email yang telah di kirim.

Page 37: Mail Tracking Faber KP

Top Related