Upload
buibao
View
217
Download
0
Embed Size (px)
Citation preview
6
BAB II
LANDASAN TEORI
2.1 Unified Modeling Language (UML)
Pada akhir tahun 80-an banyak metode berorientasi objek yang berkembang, hal
ini menyebabkan masalah dalam perkembangan sistem berorientasi objek. Yang
dikarenakan banyaknya ragam sistem yang digunakan, hal ini menyebabkan
keterbatasan kemampuan untuk men-share model sistem di antara proyek, hal ini
Dikarenakan ketidak seragaman model berlainan sistem yang digunakan menjadi tidak
compatible(reduced reusebility).
Pada tahun 1994 Grady Booch dan James Rumbaugh bergabung dan sepakat
menggabungkan metode pengembangan berorientasi objek yang bertujuan untuk
membuat proses standar tunggal untuk mengembangkan sistem berorientasi objek. Ivan
Jacobson bergabung pada tahun 1995, dan mereka bertiga focus membuat sebuah bahasa
permodelan standar, daripada mereka pendekatan atau metode berorientasi objek
standar. Dan mereka memasarkan hasil kerja mereka yang disebut Unified Process.
Berdasarkan kerja mereka pada industri, Unified Modeling Language (UML) versi 1.0
dirilis pada tahun 1997, dan terus digunakan dalam industri berorientasi objek.
UML tidak menyediakan metode untuk mengembangkan sistem, hanya sebagai
notasi yang diterima secara luas sebagai standar permodelan objek. Object Management
Group (OMG), badan standar indutri, mengadaptasi UML pada November 1997 dan
terus berkerja memperbaharui berdasarkan kebutuhan industri.
Menurut Grady Booch, UML adalah bahasa standar untuk membuat rancangan
suatu piranti lunak. UML dapat digunakan untuk melakukan visualisasi, definisi,
7
perancangan dan melakukan dokumentasi terhadap suatu sistem yang berwujud piranti
lunak secara intensif, mencakup hal-hal yang berhubungan dengan konsep unsur- unsur
konkrit seperti kelas, skema database, serta komponen piranti lunak yang dapat
digunakan kembali.
UML merupakan bahasa pemodelan dimana unsur-unsur dan aturan-aturan yang
dimilikinya berfokus pada prsentasi konsptual dan fisikal dari sistem. Unsur-unsur dan
aturan-aturan tersebut dapat digunakan untuk merancang dan membaca model objek.
Kegunaan UML adalah sebagai berikut :
• UML sebagai bahasa visualisasi digunakan untuk merancang suatu model yang
dapat dibaca oleh banyak orang dengan pengertian yang sama.
• UML bahasa pendefinisian digunakan untuk mendefinisikan dengan rinci seluruh
hasil analisis, desain, dan implementasi yang harus dilakukan dalam
pengembangan sistem.
• UML sebagai bahasa dokumentasi digunakan untuk mendokumentasikan
arsitektur beserta perinciannya, unsur-unsur yang dibutuhkan dalam
pengembangannya. Serta perencanaan dan implementasi proyek secara
keseluruhan dengan simbol-simbol yang mudah dimengerti.
2.1.1 Use-Case Diagram
Secara grafik menggambarkan interaksi antara sistem, hal-hal di luar sistem,dan
user. Dengan kata lain, mereka menggambarkan siapa yang akan memakai sistem dan
dengan cara itu seorang user akan berinteraksi dengan sistem. Use-case merupakan
8
urutan langkah yang secara tindakan saling terkait (skenario), baik termotivasi maupun
secara manual, untuk tujuan melengkapi satu tugas bisnis tunggal.
Gambar 2.1 Contoh diagram Use-case
Notasi yang digunakan dalan use-case diagram antara lain:
1. Actor
Adalah posisi yang dimiliki user terhadap sistem. Yang menjadi actor dapat
berupa manusia, hardware atau sistem lain yang berhubungan dengan sistem
yang berjalan. Atau actor adalah sesuatu yang memerlukan interaksi dengan
sistem untuk bertukar informasi.
2. Use-case symbol
Menggambarkan sekumpulan urutan, dimana setiap urutan mewakili intervensi
antara actor dengan sistem. Use case symbol merepresentasikan fungsionalitas
sistem secara keseluruhan.
9
2.1.2 Deskripsi Use-case
Bagian umum kejadian use-case adalah deskripsi use-case, yaitu langkah demi
langkah mulai dengan pelaku menginisialisasi use-case dan melanjutkannya hingga
akhir kejadian bisnis. Dimana dalam deskripsi use-case terdapat:
Nama use-case (use-case), merupakan nama dari suatu use-case.
Aktor (actor), pelaku yang berpartisipasi di dalam suatu use-case.
Tujuan (goals), tujuan dari use-case.
Prakondisi (precondition), batasan pada keadaan sistem sebelum use-case dapat
dieksekusi.
Ringkasan (summary), deskripsi ringkasan pendek yang berisi jumlah kalimat
yang menunjukkan secara garis besar tujuan use-case dan berbagai kegiatannya.
Related use-case, use-case yang saling berhubungan.
Langkah-langkah (steps), menjelaskan setiap langkah dari use-case dengan
menggunakan dua kolom, dimana kolom sebelah kiri menunjukkan aksi dari
pelaku dan kolom sebelah kanan merupakan respon yang diberikan oleh sistem.
2.1.3 Activity Diagram
Activity Diagram / diagram aktivitas adalah sebuah diagram yang dapat di
gunakan untuk menggambarkan secara grafis aliran proses bisnis, langkah-langkah
sebuah use-case atau logika behavior object. Diagram ini serupa dengan flowchart,
dimana secara grafis diagram ini meggambarkan aliran sekuential dari kegiatan baik itu
proses bisnis atau sebuah use-case. Diagram ini berbeda dengan flowchart dimana
diagram ini menggambarkan mekanisme kegiatan secara paralel.
10
Oleh karena itu, diagram ini sangat berguna untuk memodelkan kegiatan yang
akan dilakukan saat sebuah operasi dieksekusi dan untuk memodelkan hasil-hasil dari
kegiatan ini – seperti memodelkan event yang menyebabkan window akan ditampilkan
atau ditutup.
Dibawah ini merupakan simbol-simbol yang ada pada diagram aktivitas :
• Initial node.
Lingkaran yang diisi penuh merupakan awal mulainya dari diagram ini. Initial node
tidak harus ada, tetapi dengan menggunakannya membuat diagramnya lebih mudah
untuk dibaca.
• Activity.
Segi empat bersudut tumpul menggambarkan kegiatan yang perlu dilakukan. Suatu
activity bisa secara fisik, seperti Inspect Forms, atau secara elektronik, seperti Display
Create Student Screen.
• Control Flow.
Panah yang ada di diagram, menggambarkan sasaran yang mengawali kegiatan.
• Fork.
Bar hitam dengan satu flow yang mengarah ke dalamnya dan beberapa flow lainnya
meninggalkannya, merupakan bar sinkronisasi dimana kegiatn dapat dilakukan secara
paralel.
11
• Join.
Bar hitam dengan beberapa flow mengarah ke dalamnya dan ada satu flow yang
meninggalkannya, merupakan bar sinkronisasi dimana beberapa aktivitas yang
mempunyai tujuan yang sama dan tujuan dari keduanya digabung menjadi satu.
• Decision.
Gambar sebuah wajik, menggambarkan sebuah kegiatan keputusan.
• Final node.
Gambar lingkaran yang diisi penuh dan ada batas lagi di luarnya, menggambarkan akhir
dari sebuah proses.
2.1.4 Entity Relationship Diagram(ERD)
Menurut Silberschatz, Korth, Sudarshan (Silberschatz, 2002, p27) entity adalah
sebuah objek dalam dunia nyata yang dapat dibedakan dari objek lainnya. Karena setiap
entity memiliki atribut yang berbeda dan setiap atribut tersebut memiliki nilai.
Sedangkan relationship menurut Silberschatz, Korth, Sudarshan (Silberschatz, 2002,
p31) adalah asosiasi diantara beberapa entity. Jadi entity relationship diagram menurut
Silberschatz, Korth, Sudarshan (Silberschatz, 2002, p42) suatu diagram yang
mengekspresikan keseluruhan struktural logika dari sebuah basis data.
Menurut Silberschatz, Korth, Sudarshan (Silberschatz , 2002, p27) Mapping
cordinalities atau cordinality ratio adalah mengekspresikan jumlah entity yang
12
terhubung dengan entity lainnya yang dapat diasosiasikan dengan relationship set.
Mapping cordinalities sangat berguna dalam menjelaskan binary relationship sets.
Tipe-tipe mapping cordinalities :
One to one : sebuah entity di A diasosiasikan memiliki hubungan tepat satu
dengan entity di B, dan sebaliknya.
One to many : sebuah entity di A diasosiasikan memiliki banyak hubungan
dengan entity di B, dan entity di B diasosiasikan memiliki hubungan tepat satu
dengan entity di A.
Many to one : sebuah entity di A diasosiasikan memiliki hubungan tepat satu
dengan entity di B, dan entity di B diasosiasikan memiliki banyak hubungan
dengan entity di A.
Many to many : sebuah entity di A diasosiasikan memiliki banyak hubungan
dengan entity di B, dan sebaliknya.
2.1.5 Sequence Diagram
Diagram rangkaian menggambarkan bagaimana objek berinteraksi dengan satu
sama lain melalui pesan pada eksekusi sebuah use-case atau operasi. Diagram ini
mengilustrasikan bagaimana pesan terkirim dan diterima diantara objek dan dalam
sekuensi apa. Sequence diagram menampilkan garis vertikal secara paralel, objek dan
proses yang ada secara simultan, dan panah horizontal dimana pesan-pesan saling tukar
sesuai dengan urutan kejadian.
Contoh:
13
Gambar 2.2 Contoh sequence diagram
Dari sequence diatas menjelaskan bagaimana siklus yang terjadi di satu restoran dimana
ada pemesanan makanan dan minuman. Semua garis horizontal yang berfungsi sebagai
pesan terjadi berurutan sesuai dengan urutan kejadian.
Sequence diagram menggambarkan aksi yang terjadi dalam suatu system, pemanggilan
dari metode-metode di setiap objek, dan urutan dimana pemanggilan tersebut terjadi
termasuk di dalam sequence diagram. Hal ini membuat Sequence diagram sebagai suatu
tool yang sangat berguna untuk menjelaskan perilaku dinamis dari sebuah sistem.
Karena penggunaan nama kelas dan referensi nama objek, Sequence diagram menjadi
sangat berguna dalam mengelaborasi dan menjabarkan desain dinamis, urutan, dan asal
pemanggilan dari suatu objek.
14
2.2 Rekayasa Piranti Lunak
2.2.1 Pengertian Rekayasa Piranti Lunak
Menurut pressman(2001,20), rekayasa piranti lunak adalah penerapan dan penggunaan
prinsip-prinsip rekayasa dalam usaha menghasilkan piranti lunak yang ekonomis,dapat
dihandalkan danberkerja secara efisien pada mesin yang sesungguhnya .paradigma
rekayasa piranti lunak yang sering digunakan adalah the Classic Life Cycle atau lebih
dikenal dengan Waterfall model.(pressman,2001,p28-29).
Gambar 2.3 Waterfall model
Tahapan-tahapan yang dilakukan dalam waterfall model ini adalah :
a. Analisis dan perancangan sistem(System information dan modeling)
Piranti lunak merupakan bagian dari suatu sistim yang lebih besar
sehingga langkah pertama yang harus dilakukan adalah menetapkan
kebutuhan untuk semua elemen sistem. hal ini penting karena piranti
lunak harus lebih dulu berinteraksi dengan elemen-elemen lainnya seperti
perangakat keras, pengguna dan database.
b. Analisis kebutuhan piranti lunak (Software Requirement Anlysis)
15
Proses pengumpulan kebutuhan dilakukan secara intensif dan terfokus
khususnya pada piranti lunaknya. untuk mengerti sistem yang akan
dibangun, seorang pembuat sistem harus memahamiinformasi yang
dibutuhkan piranti lunak, fungsi-fungsi, performance dan antar muka.
c. Perancangan (Design)
Perancangan di pusatkan pada empat atribut program yaitu struktur data,
arsitektur piranti lunak, perincian prosedur dan karaktersitik antar muka.
Sama seperti piranti lunak, perancangan ini juga menjadi bagian dari
konfigurasi piranti lunak.
d. Pengkodean
Didalam tahapan ini, pengkodean bertujuan untuk menterjemahkan
desain ke dalam bentuk yang dapat dimengerti oleh mesin. jika desain
dilakukan secara terperinci, pengkodean dapat dilakukan secara mekanik
seluruhnya.
e. Pengujian (Testing)
Setelah proses pengkodean selesai, dilakukan pengujian sampai semua
perintah selesai diuji. pengajuan ini bertujuan untuk menemukan
kesalahan dan memastikan keluaran yang dihasilkan sesuai dengan apa
yang diharapkan.
f. Dukungan (Support)
Pirantilunak ini akan mengalami perbaikan secara terus menerus setelah
dipergunakan oleh penggunadan apabila terjadi perubahan karena
terjadinya kesalahan, hal ini menyebabkan diperlukannya perbaikan
fungsional dan unjuk kerja piranti lunak. Pemeliharaan piranti lunak
16
menawarkan setiap langkah daur hidup yang terdahulu menjadi program
yang sudah daripada membuat suatu program yang baru.
2.2.2 Elemen pokok RPL
Elemen pokok Rekayasa Piranti Lunak adalah sebagai berikut :
1. Process
Pada proses RPL merupakan perekat yang mengikat lapisan-lapisan teknologi
secara bersama dan memampukan perangkat lunak computer untuk berkembang
secara tepat waktu dan rasional. Proses menggambarkan suatu kerangka kerja
untuk sekumpulan dari Keys Proses Area (KPAs) yang harus diterapkan untuk
keefektifan pengiriman dar iteknologi rekayasa piranti lunak. Key process areas
merupakan bentuk dasar bagi control managemen dari proek-proyewk piranti
lunak dan menerapkan konteks dimana metode teknis daapt diterapkan. Produk
kerja (model, dokumen, data, laporan, bentuk, dll) yang di produksi, kualitas
yang dipastikan, dan perubahan yang diatur dengan baik.
2. Methods
Metode Rekayasa Pirantil Lunak menyediakan teknik bagaimana cara untuk
membangun piranti lunak. Metode yang meliputi suatu ruang lingkup tugas yang
luas yang meliputi analisa kebutuhan , desain , konstruksi program, pengujian,
dan dukungan. Metode rekaasa Piranti Lunak Bergantung pada sekumpulan
prinsip-prinsip dasar yang memerintah tiap area dati teknologi dan meliputi
kegiatan modeling dan teknik deskriptif lainnya.
17
3. Tools
Peranan Rekayasa Piranti lunak menyediakan dukungan yang otomatis dan semi-
Otomatis bagi proses dan metode-metodenya. Ketika peralatan itu terintegrasi,
maka informasi yang dibentuk oleh suatu alat dapat digunakan oleh yang
lainnya, suatu sistem yang mendukung perkembangan piranti lunak disebut
Computer-Aideds Software (CASE), telah didirikan. CASE merupakan
kombinasi dari software, hardware, dan suatu basis data rekayasa piranti lunak
(sebuah tempat penyimpanan yang berisi informasi penting tentang analisis,
desain, konstruksi program, dan pengujian ) untuk menciptakan suatu lingkungan
analogis rekayasa piranti lunak untuk CAD/CAE (computer-aided design/
engineering) untuk peragkat keras
2.3 Interaksi Manusia dan Komputer (IMK)
Interaksi Manusia dan Komputer merupakan disiplin ilmu yang berhubungan
dengan perancangan, evaluasi, dan impleentasi sistem komputer interaktif untuk
digunakan oleh manusia, serta studi fenomena-fenomena besar yang berhubungan
dengannya. Tujuan dari ilmu ini adalah untuk membangun atau merancang suatu sistem
yang aman, sesuai dengan kebutuhan, efektif, efisien, dan dapat dipakai dipakai. Konsep
utama dari interaksi manusia dan komputer adalah bagaimana membuat sistem yang
mudah dipelajari dan digunakan.
2.3.1 Eight Golden rules
Menurut Shneiderman (1992, p74), ada 8 aturan emas dalam perancangan
interface :
18
1. Konsistensi.
Tampilan yang ada diusahakan untuk tetap konsisten.
2. Kemungkinkan frequent user untuk mengunakan shortcut
Umumnya user yang sudah sering menggunakan aplikasi lebih menginginkan
kecepatan dalam mengakses informasi yang diinginkan. Jadi tingkat interaksi yang
diminta lebih pendek/singkat dan langsung menunjuk fungsi tersebut. Sehingga perlu
disediakan tombol/perintah yang special.
3. Memberikan umpan balik yang imformatif.
Umpan balik harus diberikan untuk memberikan informasi kepada user asesuai
dengan aksi yang dilakukannya. User akan mengetahui aksi apa yang telah dan akan
dilakukan dengan adanya umpan balik. Umpan balik biasanya berupa
konfirmasi/informasi atau suatu aksi.
4. Merancang dialog untuk menghasilkan keadaan akhir.
Umpan balik atas akhir dari suatu proses dan aksi akan sangat membantu dan juga
user akan mendapatkan sinyal untuk melakukan aksi lainnya.misalnya pada saat
menutup suatu program akan ditampilkan konfirmasi penutupan.
5. Memberikan pencegahan kesalahan dan penanganan kesalahan sederhana.
Sistem dirancang sedemikian rupa sehingga dapat mencegah user dalam melakukan
kesalahan.
6. Mengijinkan pembalikan aksi dengan mudah.
Terkadang user tidak sengaja melakukan aksi yang tidak diinginkan, untuk itu ingin
melakukan pembatalan ini. User akan lebih aman dan tidak takut dalam mencoba dan
memakai system ini.
7. Mendukung internal locus of control
19
User yang berpengalaman sangat mendambakan control yang kuat pada system
sehingga mereka merasa menguasai system tersebut.
8. Mengurangi beban ingatan jangka pendek.
Keterbatasan memori pada manusia harus ditanggulangi oleh program dengan tidak
banyak membuat user untuk melakukan proses penyimpanan memori.
2.4 Web Based Application
Aplikasi web adalah suatu aplikasi yang dapat membentuk halaman-halaman
web berdasarkan permintaan pemakai. Aplikasi web juga bisa mencakup permintaan
yang interaktif ataupun kelompok diskusi. Aplikasi web merupakan salah satu contoh
aplikasi client atau server. Client mewakili komputer yang dapat digunakan oleh seorang
pemakai yang hedak menggunakan aplikasi, sedangkan server mewakili komputer yang
menyediakan layanan aplikasi. Dalam konteks ini, client dan server berhubungan
melalui internet maupun intranet. Yang menarik, model clien atau server yang
menggunakan aplikasi web dapat melibatkan bermacam-macam platoform.
Ciri lain penggunaan aplikasi web adalah, pemakai harus menggunakan
perangkat lunak yang dinamakan web browser/ browser ( misalnya Internet Explorer,
Opera, dan Mozilla) untuk mengases aplikasi web.
Komputer yang bertindak sebagai server umumnya menyediakan database
server, selain web server yang ditujukan untuk melayani permintaan pemakai yang
hendak mengakses aplikasi web. Database server adalah server yang melayani akses
terhadap database. MySQL merupakan salah satu contoh dari banyak database server.
20
Aplikasi web sebagian besar berada di dalam sebuah jaringan yang melayani
kebutuhan dari komunitas klien yang berbeda, memiliki tampilan teks, grafik, audio dan
video, dan juga terus mengalami perubahan.
2.4.1 Siklus Perancangan Program
Dalam mengembangkan program kami ada urutan atau siklus yang merupakan
tahapan-tahapan pengembangan. Dengan metode Waterfall, diharapkan proses
pengembangan program akan berjalan dengan baik. Tahapan pengembangan program
dapat kita bagi menjadi tahapan-tahapan sebagai berikut :
1. Analisis
Tahapan ini merupakan tahapan paling awal dalam siklus pengembangan
program pada tahapan ini lebih banyak difokuskan kepada ide awal atau sketsa
mengenai program yang akan dikembangankan secara keseluruhan. Dari hal-
hal yang sifatnya konseptual sampai kearah fasilitas dan ruang lingkup program
itu nantinya. Tahap ini nantinya akan dijadikan pikiran utama yang akan
dikembangkan lebih jauh pada tahap-tahap selanjutnya. Dengan
dilaksanakannya tahapan konsep ini secara matang, akan sangat membantu dan
memberikan kontribusi efisiensi waktu yang cukup banyak.
2. Rancangan
Perancangan yang dimaksudkan bukan hanya desain tampilan saja, melainkan
juga perancangan keseluruhan program yang ingin dikembangkan. Dari mulai
format teks, tata letak, penggunaan warna dan tema serta sampai fasilitas apa
saja yang ditampilkan atau disediakan di dalam program.
3. Pengembangan
21
Pada tahap ini pembuatan program secara nyata (coding) dilakukan. Sering kali
banyak yang mempunyai asumsi bahwa tahapan ini yang paling sulit dan
bermasalah, namun apabila kedua tahapan yang sebelumnya telah dilakukan
dengan baik dan benar tahap ini tidaklah akan sulit dilakukan.
4. Testing dan Implementasi
Setelah program selesai dibuat sampai akhir dan telah dipastikan bahwa
semuanya telah sesuai dengan apa yang telah direncanakan barulah tahapan
implementasi dilakukan. Tahapan ini adalah tahapan yang sering disebut
sebagai tahap akhir dari pengembangan program, dimana pada tahap ini akan
diimplementasikan (online) pada sebuah webserver.
5. Maintenance
Setelah program telah diimplementasikan (online), maka selanjutnya adalah
tahapan perawatan dari program yang ada. Perawatan yang dimaksud adalah
dilakukannya pemeliharaan sistem atau fasilitas maupun data dari program
yang ada. Pada tahapan ini data yang up-to date mempunyai peranan yang
sangat penting.
2.3.2 Top Ten Mistakes of Web Design
Menurut Jakob Nielsen ada beberapa hal yang harus dihindari dalam merancang suatu
website, yaitu:
1. Penggunaan frame
2. Penggunaan teknologi dengan serampangan
3. Gerakan teks dan animasi yang berjalan terus
4. URL yang kompleks
22
5. Halaman yatim
6. Halaman yang gulungannya terlalu panjang. Isi terpenting dari suatu halaman
dan navigasi harus tampak di bagian atas
7. Kurangnya dukungan navigasi
8. Warna link yang tidak standar
9. Informasi yang sudah basi (kurangnya up-date)
10. Waktu download atau loading yang terlalu lama. Pemakai akan kehilangan
minat dalam 10-15 menit.
2.3.3 HTML
HTML merupakan singkatan dari Hypertext Markup Language. HTML
digunakan untuk membangun suatu halaman web. Sekalipun banyak orang menyebutnya
sebagai suatu bahasa pemrograman, HTML sebenarnya bukan bahasa pemrograman,
karena tercermin dari namanya, HTML adalah suatu bahasa mark up terhadap sebuah
dokumen teks. Tanda tersebut digunakan untuk melakukan mark up atau penandaan
terhadap sebuah dokumen teks. Tanda tersebut digunakan untuk menentukan format dari
text yag ditandai.
HTML dibuat dengan menggunakan teks yang diformat dan disebut tag. Tag
penulisannya diapit oleh lambang < >. Tag biasanya ditampilkan dalam pasangan berupa
tag pembuka untuk menjalankan fitur pemformatan dan tag penutup untuk penutup
pemformatan. Tag penutup namanya sama dengan tag pembuka tetapi penulisannya
didahului dengan karakter “/”.
Suatu dokumen HTML dimulai dengan tag <HTML> dan diakhiri dengan tag
</HTML>. Kepala dokumen ditandai dengan tag <HEAD> dan diakhiri dengan tag
23
</HEAD> yang dapat diisi dengan judul dokumen. Bagian berikutnya adalah isi dari
halaman yang ditandai dengan tag <BODY> dan ditutup dengan </BODY>.
2.3.4 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 data-driven website yang kuat untuk e-commerce, portal komunitas, dan
aplikasi berbasis web lainnya.
Secara khusus, PHP dirancang untuk membentuk web dinamis. Artinya, ia dapat
membentuk suatu tampilan berdasarkan permintaan terkini. 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 PHP dapat juga bisa berkomunikasi dengan basis data
dan melakukan perhitungan-perhitungan yang kompleks sambil jalan.
24
PHP sendiri sangat terkenal dengan kecepatannya dan dari sisi programming
PHP memiliki kemiripan dengan bahasa C, selain itu sebagai software open source,
terdapat ribuan programer yang ikut mengembangkan PHP, hingga saat ini telah
mencapai versi 5. Adapun fitur-fitur yang didukung antara lain:
• Dukungan OOP (object oriented programming) melalui PHP Data
Objects.
• Dukungan yang lebih baik terhadap MySQL yang dikenal dengan
Extension.
• Dukungan yang lebih baik terhadap XML, dsb.
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 bulan Januari 2001 terdapat lebih dari 5.100.000 situs web yang
menggunakan PHP.
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. (Kadir, Abdul, 2000, p. 6)
PHP merupakan singkatan dari Hypertext Preprocessor , yakni instruksi atau
perintah pemrograman berbasis web yang biasa disisipkan dalam dokumen HTML,
sebagai skrip pendukung yang ada di lingkungan server (server side HTML embedded
scripting).
25
2.3.5 Macromedia DreamWeaver MX 2004
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.
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 design tools dan coding
yang dapat dimodifikasi dengan mendukung teknologi untuk website statis atau aplikasi
web berbasis server. (Evans, 2004, p7).
26
2.4 Internet
Internet adalah singkatan dari Interconnection Networking, atau sering disebut
juga sebagai cyberspace, adalah sebuah jaringan komputer yang terdiri dari berbagai
macam jaringan komputer di seluruh dunia dengan sistem operasi yang berbeda-beda.
Jaringan ini dapat berupa jaringan-jaringan lokal berskala kecil, jaringan kelas
menengah, hingga jaringan-jaringan utama (backbone) yang menjadi tulang punggung
internet.
Internet memugkinkan suatu jaringan komunikasi global yang tidak hanya
menghubungkan para mitra dagang tetapi juga mencakup para pelanggan. Sebagian
besar kebangkitan perdagangan melalui jaringan elektronik diharapkan berasal dari
perusahaan-perusahaan yang akan mempromosikan, dan dalam beberapa kasus
mengirimkan produk mereka melalui internet. Internet dapat digunakan untuk aplikasi
bisnis apapun yang melibatkan komunikasi data, termasuk komunikasi baik di dalam
perusahaan maupun dengan lingkungan (McLeod, 2001, p.73)
2.4.1 Intranet
Intranet mirip sebuah internet yang kecil yang berpasangan dengan manajemen
informasi dan alat-alat akses dari world wide web, keseluruhan dari jaringan organisasi.
Aplikasi yang digunakan dalam internet seperti e-mail, newreaders, dan web browser,
semuanya dapat digunakan sebaik internet. Dapat dipilih untuk menghubungkan intranet
ke internet atau dapat juga diputuskan untuk membiarkan intranet secara lokal tanpa
dihubungkan dengan internet.
Intranet adalah konsep LAN yang mengadopsi teknologi internet yang
diperkenalkan pada akhir tahun 1995. Intranet adalah LAN yang menggunakan
27
komunikasi dan segala fasilitas internet. Umumnya intranet juga terkoneksi ke internet
sehingga memungkinkan pertukaran informasi dan data dengan jaringan internet lainnya
(internetworking) melalui backbone internet.
Kompatibilitas intranet sangat tinggi terhadap sistem lainnya, sehingga mudah
diterapkan, dipelajari, dikembangkan, dan dikonfigurasi ulang. Dukungan aplikasi,
program dan sistem operasi yang luas akibat dari popularitas internet menjadikan
intranet sebagai masa depan LAN. Keistimewaan fasilitas intranet yang tidak terdapat
pada jaringan lokal (LAN) konvensional adalah:
• Tampilan WEB (grafis, multimedia) pada sistem operasi, navigasi, aplikasi
maupun databasenya.
• Fasilitas standar internet seperti e-mail, transfer file (FTP), emulasi terminal
jarak jauh, dan pengendalian peralatan network jarak jauh (SMNP).
• Aplikasi internet seperti search engine, mailing list, newsgroup, archie, gopher,
dan sebagainya.
• Script Programming Universal Common Gateway Interface (CGI), Perl, Visual
Basic, C, dan Java yang mendukung operasi database.
• Dukungan integrasi database dan kompatibilitas dengan perangkat lunak yang
telah ada seperti dengan Foxpro, SQL, maupun Oracle.
• Teknologi LAN seperti manajemen database,, sistem terdistribusi, client server,
sharing resource dan peripheral tetap dipertahankan.
28
2.4.2 WWW (World Wide Web)
Menurut Hahn (1996, p.24) World Wide Web atau biasa disebut dengan web
adalah suatu sistem server yang besar dan mengatur berbagai macam informasi yang
dapat berupa teks, gambar maupun suara. Untuk mendapatkan informasi tersebut
diperlukan sebuah program client yang disebut dengan browser.
World Wide Web merupakan bagian yang tepenting dari internet, diciptakan di
CERN, pusat riset Swiss sebagai sebuah proyek akademik. Dalam proyek ini mencoba
untuk menyediakan akses ke berbagai sumber informasi dengan mengaitkannya tidak
hanya pada dokumen saja yang melalui HTTP (Hypertext Transfer Protocol), akan
tetapi FTTP dan WAIS. Dengan WWW diperkenalkan konsep rich text dan multimedia
didalam elemen internet, jadi dokumen yang selama ini hanya berbentuk text sekarang
dapat ditambah grafik maupun suara.
Istilah-istilah World Wide Web (Mcleod, 2001, p.75):
Website, ini mengacu pada sebuah komputer yang dikaitkan ke Internet yang
berisi hypermedia yang dapat diakses dari komputer lain melalui suatu hyperlink.
Hypertext Link, ini mengacu pada suatu petunjuk yang terdiri dari teks atau
grafik yang digunakan untuk mengakses hypertext yang disimpan di website.
Teks itu biasanya digaris bawahi dan ditampilkan dalam warna biru.
Web Page, ini mengacu pada suatu file hypermedia yang disimpan di suatu web
site, yang diidentifikasi oleh suatu alamat yang unik.
Home Page, ini mengacu pada halaman pertama dari suatu web site. Halaman-
halaman lain di site tersebut dapat dicapai dari home page.
URL (Universal Resource Locator), ini mengacu pada alamat dari suatu web
page.
29
Browser, ini mengacu pada suatu sistem perangkat lunak yang memungkinkan
kita mengambil hypermedia dengan mengetikkan parameter pencarian atau
mengklik suatu grafik. Kemampuan ini membebaskan kita dari keharusan untuk
mengetahui URL dari web page yang berisi informasi yang kita butuhkan.
Browser disebut juga search engine.
FTP (File Transfer Protocol), ini mengacu pada perangkat lunak yang
memungkinkan kita menyalin file ke komputer kita dari website mana saja.
2.5 Database
2.5.1 Definisi Database
Menurut Connolly, database adalah kumpulan koleksi data-data yang saling
berhubungan secara logika yang isinya didesain untuk memenuhi kebutuhan informasi
dari suatu perusahaan. Setiap database dapat berisi atau memiliki sejumlah objek
database, antara lain yaitu:
a. Field
Field adalah sekumpulan kecil dari kata atau sebuah deretan angka-angka.
b. Record
Record adalah kumpulan dari field yang berelasi secara logis. Contohnya nama,
alamat, nomer telpon dan sebagainya.
c. File
File atau berkas adalah kumpulan dari record yang berelasi secara logis.
Contohnya berkas transaksi toko A yang mempunyai record tanggal, kode
barang dan harga.
30
d. Entity
Entity adalah orang, tempat, benda, atau kejadian yang berkaitan dengan
informasi yang disimpan. Contoh: pelanggan, pekerja dan sebagainya.
e. Attribute
Attribute adalah setiap karakteristik yang menjelaskan suatu entity. Contoh:
nama pelanggan, umur pekerja dan sebagainya.
f. Primary key
Primary key adalah sebuah field yang nilainya unik yang tidak sama antara suatu
record dengan record yang lain. Primary key digunakan sebagai tanda pengenal
dari suatu field.
g. Foreign key
Foreign key adalah sebuah field yang nilainya berguna untuk menghubungan
primary key lain yang berada pada tabel yang berbeda.
Untuk suatu perusahaan atau organisasi dapat mendapatkan keuntungan dari
suatu database, maka perusahaan atau organisasi tersebut harus memiliki sebuah
“Database Management System” yang baik.
2.5.2 Relational Database
Pada model basis data relasional, seluruh data disusun secara logikal dalam
relasi-relasi atau tabel. Setiap relasi terdiri dari baris dan kolom, dan kolom dari relasi
yang diberi nama tertentu disebut atribut. Baris dari relasi disebut tuple dan setiap tuple
(baris) memil iki satu nilai untuk setiap atribut. Basis data yang tabel-tabelnya saling
terhubung dikatakan memiliki relasi. Setiap baris dapat diidentifikasi secara unik dengan
menggunakan primary key. Munculnya sebuah atribut dalam beberapa relasi dapat
31
merepresentasikan hubungan antar tuple dari relasi-relasi tersebut. Jika field A pada
tabel 1 yang berelasi dengan tabel 2 adalah primary key, maka pada tabel 2 field A
merupakan foreign key. Ada kaidah yang harus dipenuhi oleh foreign key dan primary
key, yaitu :
• Integritas entity
Tidak ada bagian dari primary key yang bernilai NULL.
• Integritas referential
Basis data tidak boleh mengandung nilai-nilai primary key yang tidak punya
pasangan (unmatch).
2.5.3 Teknik Normalisasi
Ialah proses untuk menghilangkan redundancy (data kembar ), dalam suatu tabel
sehingga proses ini membuat tabel lebih mudah dimodifikasi (Mannino,2004,p231).
Normalisasi dapat dicapai dan dimengerti dalam beberapa tahapan, dan tiap-tiap tahapan
berkorespondensi terhadap normal form. Menurut Jeffrey.A.Hoffer normalisasi adalah
keadaan suatu relasi yang dihasilkan dari menerapkan aturan – aturan sederhana yang
berkaitan dengan ketergantungan fungsional (hubungan antar atribut pada relasi
tersebut) pada relasi tersebut. Adapun langkah – langkah membuat normalisasi menurut
Jeffrey.A.Hoffer adalah :
1. First Normal Form
Semua atribut-atribut yang berkaitan dengan satu item maka harus dihilangkan
dan diletakkan pada suatu tabel terpisah. Sebagai contoh jika suatu tabel
mempunyai atribut-atribut sebagai berikut:
32
Gambar 2.4 Atribut tabel
Maka bentuk 1st normal form dari tabel customers adalah seperti ini:
Gambar 2.5 1st Normal Form
Gambar diatas merupakan hasil normalisasi dari tabel sebelumnya. Pada tabel
ini terdapat hubungan one to many, hal ini merepresentasikan apa yang akan
dilakukan oleh database pada situasi nyata.
33
2. Second Normal Form
Aturan dari second normal form adalah semua ketergantungan sebagian harus
dihilangkan dan dipisahkan ke table mereka sendiri.
Gambar 2.6 Second Normal Form
3. Third Normal Form
Aturan dari third normal form adalah menghilangkan dan memisahkan setiap
data yang bukan key. Kolom ini harus berdasarkan key,sebuah key haruslah
unik.
Gambar 2.7 Third Normal Form
34
2.5.4 MySQL
MySQL adalah salah satu database server yang sangat sering digunakan
sekarang ini,disebabkan MySQL menggunakan SQL sebagai bahasa dasar untuk
mengakses database. Software server MySQL pertama dibuat oleh Michael “Montly”
Widenius dan timnya pada tahun 1994. Pemakaian database MySQL yang dimaksud
penulis adalah pengembang aplikasi database yang ingin menggunakan MySQL sebagai
database-nya atau “backend ”dari aplikasi yang dibangun. Sedangkan MySQL
mempunyai kelebihan dapat diakses oleh banyak bahasa pemograman. MySQL
merupakan database server yang ideal untuk data segala ukuran dengan kemampuan
mempunyai kecepatan yang sangat tinggi dalam pemrosesan data, multi-threaded, multi-
user, dan query. Ukuran database MySQL lebih kecil file database yang lain.
Beberapa pertimbangan programer memilih MySQL sebagai “backend ” dalam
menggolah database adalah :
1. Kecepatan
2. Mudah digunakan
3. Open Source
4. Kapabilitas
5. Biaya murah
6. Keamanan
7. Lintas platform
MySQL mendapat dukungan dari PHP secara khusus, menjadikan kombinasi
PHP dan MySQL merupakan tools yang saling mendukung untuk digunakan
programmer web.
35
Untuk database kecil hingga menengah, MySQL memiliki kecepatan yang dapat
diandalkan, dan sama seperti PHP, MySQL juga open source, oleh karena itu MySQL
terus dikembangkan dari waktu ke waktu oleh komunitas publik open source.
2.6 Produk
Definisi produk menurut Ulrich dan Eppinger (2003, p.2) adalah sebuah hasil
pemikiran yang berupa barang atau jasa yang dijual oleh perusahaan kepada
pelanggannya. Sedangkan definisi pengembangan produk adalah sekumpulan aktivitas
yang diawali atas adanya peluang bisnis dari pasar yang ada, dan kemudian diakhiri
dengan adanya proses produksi, pemasaran, dan distribusi.
Karakteristik pengembangan produk yang sukses menurut Ulrich dan Eppinger
(2003,p.2) mencakup:
Kualitas produk yang baik dan sesuai dengan kebutuhan konsumen.
Biaya produksi yang dapat menentukan besarnya angka penjualan dan profit
perusahaan.
Waktu yang diperlukan untuk pengembangan produk baru yang dapat
menentukan seberapa kompetitifnya sebuah perusahaan terhadap perkembangan
teknologi.
Biaya pengembangan produk baru menentukan seberapa besar pengeluaran
perusahaan dalam mencapai profit yang diinginkan.
Kemampuan perusahaan dalam mengembangkan produk baru adalah merupakan
aset penentu dalam menambah pengalaman untuk terus melakukan
pengembangan produk di masa yang akan datang.
36
Produk yang dimaksud dalam proses bisnis pada PT.Bank MEGA Tbk ini yaitu
suatu hasil pemikiran atau hasil dari suatu kesepakatan antar suatu divisi yang bertujuan
untuk memajukan perusahaannya. Biasanya produk ini harus diolah dahulu oleh satu
divisi. Setelah produk disepakati dan sudah matang lalu akan diajukan proposalnya.
Proposal produk itu akan mengalami proses-proses yang harus dijalani sebelum akhirnya
disetujui atau tidak.