BAB II REKAYASA PERANGKAT LUNAK

advertisement
BAB II REKAYASA PERANGKAT LUNAK
2.1 Rekayasa Perangkat Lunak
Software (Perangkat Lunak) adalah kumpulan perintah (program komputer) yang
ketika dieksekusi menyediakan kinerja struktur data yang memungkinkan program untuk
memanipulasi informasi dan dokumen yang menggambarkan operasi dan kegunaan
program. Singkatnya software merupakan program elektronik yang berguna untuk
mengolah data menjadi informasi.
Sedangkan Engineering (rekayasa) adalah aplikasi terhadap pendekatan sistematis
yang berdasarkan atas ilmu pengetahuan dan matematis serta aplikasi tentang produksi
terhadap struktur, mesin, produk, proses atau sistem. Singkatnya engineering merupakan
praktek dari ilmu pengetahuan dan logika pada suatu sistem. Sehingga rekayasa
perangkat lunak adalah metode untuk merekayasa perangkat lunak secara efisien dengan
pendekatan sistematis. Singkatnya cara untuk membuat suatu software dapat memenuhi
kebutuhan baru tanpa harus mengganti software sepenuhnya.
Peran perangkat lunak (software) terhadap pekerjaan manusia ada bermacam-macam
dan cenderung sulit untuk dilakukan sendiri, oleh karena itu diciptakan teknologi untuk
membantu manusia dalam menjalankan pekerjaannya. Peran software atau perangkat
lunak dalam teknologi sangatlah penting karena software merupakan bagian dari
teknologi yang berfungsi memberikan perintah kepada mesin untuk menjalankan
tugas/fungsinya. Seiring dengan berkembangnya kebutuhan manusia, teknologi juga
semakin berkembang dan menuntut perkembangan software untuk menjalankannya.
Sehingga software atau perangkat lunak berperan penting untuk memberikan perintah
kepada mesin/komputer untuk menjalankan fungsinya. Karakteristik perangkat lunak
menurut Ian Sommerville adalah ;
1. Maintainability. Perangkat lunak harus dapat diperbaharui sehingga dapat
memenuhi berbagai kebutuhan user yang semakin bertambah. Dependability
perangkat lunak harus dapat diandalkan dan dipercaya dalam menjalankan
pekerjaan atau programnya.
2. Efisiensi. Perangkat Lunak harus seefisien mungkin dalam penggunaan
resource/sumber daya.
http://digilib.mercubuana.ac.id/
3. Usability . Perangkat Lunak harus dapat menjalankan programnya sesuai dengan
fungsi/kegunaannya.
Perbedaan software (perangkat lunak) dan hardware (perangkat keras) adalah :
software tidak berwujud fisik dan hanya dapat dilihat melalui interface (tatap mula) di
layar komputer. Pembuatan software tergantung keoptimalan developer dalam membuat
sistem. Biaya pembuatan software cenderung berdasarkan biaya developer.Batas
pemakaian tergantung sesuai kebutuhan user, jika memang sudah tidak cocok dengan
kebutuhan dapat diganti dengan yang lebih update. Sedangkan hardware memeilii ciri-ciri
sebagai berikut:
1. Berwujud fisik dan dapat dilihat secara nyata. Pembuatan hardware bergantung
kepada optimalnya produksi pabrik.
2. Biaya pembuatan hardware berdasarkan bahan bakunya
3. Terdapat usia tertentu dimana kinerja hardware akan menurun dan harus diganti
dengan hardware yang sama atau dengan yang lebih baik.
2.1.1 Aplikasi
Aplikasi merupakan suatu subkelas dari perangkat lunak yang memanfaatkan
kemampuan komputer dalam melakukan suatu tugas tertentu. Contoh aplikasi adalah
pengolah data, lembar kerja, dan pemutar media. (IT update, 2012).
Gambar 2.1 Lapisan perangkat lunak ,Pressman 2015
Software dapat didefinisikan seperti berikut :
1. Struktur data yang sangat memungkinkan sebuah program dapat memanipulasi
informasi dengan baik Biaya pembuatan hardware berdasarkan bahan bakunya
http://digilib.mercubuana.ac.id/
2. Informasi deskripttif berupa hard copy dan bentuk virtual yang dapat
menggambarkan operasi dan kegunaan dari suatu program.
3. Instruksi (Program komputer) saat eksekusi dapat menyediakan features,fungsi
dan performa yang sesuai dan dapat diinginkan oleh pengguna
Rekayasa perangkat lunak juga merupakan pembuatan dan penggunaan prinsi-prinsip
keahlian teknik untuk mendapatkan perangkat lunak yang ekonomis handal dan bekerja
secara efisien pada mesin yang sesungguhnya. Rekayasa perangkat lunak mendirikan
suatu pondasi untuk suatu proses perangkat lunak yang lengkap dengan mengidentifikasi
sejumlah aktifitas kerangka kerja yang berlaku untuk semua proyek perangkat lunak
terlepas dari hal ukuran dan kompleksitas.
2.2 Metode Agile Development
Agile
Software
Development
adalah
cara
membangun
software
dengan
melakukannya dan membantu orang lain membangunnya sekaligus. Agile software
development memungkinkan model proses yang toleransi terhadap perubahan kebutuhan
sehingga perubahan dapat cepat ditanggapi. Namun di sisi lain menyebabkan
produktifitas menurun. Dalam Agile Software Development interaksi dan personel lebih
penting dari pada proses dan alat, software yang berfungsi lebih penting daripada
dokumentasi yang lengkap, kolaborasi dengan klien lebih penting dari pada negosiasi
kontrak, dan sikap tanggap terhadap perubahan lebih penting daripada mengikuti rencana.
Namun demikian, sama seperti model proses yang lain, Agile Software Development
memiliki kelebihan dan tidak cocok untuk semua jenis proyek, produk, orang dan situasi.
Agile Software Development memungkinkan model proses yang toleransi terhadap
perubahan sehingga perubahan dapat cepat ditanggapi. Namun di sisi lain menyebabkan
produktifitas menurun.
2.2.1 XP
Nilai-nilai Dasar Extreme Programming (XP). Berikut adalah nilai-nilai mendasar
yang menjadi roh dari XP pada setiap tahapan proses pengembangan perangkat lunak :
1. Communication ( Komunikasi ). XP memfokuskan pada hubungan komunikasi
yang baik antar anggota tim. Para anggota tim harus membangun saling
pengertian, mereka juga wajib saling berbagi pengetahuan dan keterampilan
dalam mengembangkan perangkat lunak. Ego dari para programer yang
biasaanya cukup tinggi harus ditekan dan mereka harus membuka diri untuk
bekerjasama dengan programer lain dalam menuliskan kode program.
http://digilib.mercubuana.ac.id/
2. Courage . Para anggota tim dan penanggungjawab pengembangan perangkat
lunak harus selalu memiliki keyakinan dan integritas dalam melakukan tugasnya.
Integritas ini harus selalu dijaga bahkan dalam kondisi adanya tekanan dari
situasi sekitar (misalnya oleh klien atau pemilik perusahaan). Untuk dapat
melakukan sesuatu dengan penuh integritas terlebih dahulu para anggota tim
harus terlebih dahulu memiliki rasa saling percaya. Rasa saling percaya inilah
yang coba dibangun dan ditanamkan oleh XP pada berbagai aspeknya.
3. Simplicity. Melakukan semua tahapan dengan sederhana. Hal tersebut adalah
salah satu nilai dasar dari XP. Dengan menggunakan method yang pendek dan
simpel,dalam membuat desain,menghilangkan fitur yang tidak ada gunanya, dan
berbagai proses penyederhanaan lain merupakan nilai utama dari setiap aspek
XP.
4. Feedback ( umpan balik). Selalu memberikan feedback kepada sesama anggota
tim maupun pihak-pihak lain yang terlibat dalam pengembangan perangkat lunak.
Utarakan selalu pikiran anda dan diskusikan kesalahan-kesalahan yang muncul
selama proses pengembangan. Dengarkan selalu pendapat rekan yang lain,
dengan adanya feedback inilah seringkali kita menyadari bagian mana yang salah
atau bisa ditingkatkan lagi dari perangkat lunak yang dikembangkan.
5. Quality Work (Kualitas pekerjaan )Semua nilai di atas berujung pada sebuah
kondisi di mana kita melakukan pekerjaan dengan berkualitas. Dengan proses
yang berkualitas maka implikasinya akan muncul pula perangkat lunak yang
berkualitas sebagai hasil akhirnya.
Gambar 2.2 Agile development,Pressman 2015
http://digilib.mercubuana.ac.id/
Pemrograman Ekstrim ( XP ) menggunakan
pendekatan berorientasi objek.
Berikut langkah langkah Agile Development :
1. Perencanaan ( Planning).
Aktivitas perencanaan dimulai dengan membuat user stories yang menggambarkan
output,fitur dan fungsi fungsi dari software yang akan dibuat . user stories tersebut
kemudian diberikan bobot seperti prioritas dan dikelompokkan untuk selanjutnya
dilakukan proses delivery secara incremental
2. Desain ( Design).
Desain dalam XP mengikuti prinsip KIS ( keep it simple). Untuk desain yang sulit, Xp
akan menggunakan spike solution dimana pembuatan desain dibuat langsung ke
tujuannya. XP juga mendukung adanya refractoring dimana software sistem diubah
sedemikian rupa dengan cara mengubah struktur kode dan menyederhanakan namun hasil
dari kode tidak berubah.
3. Pengkodean ( Coding).
Proses pengkodean pada XP diawali dengan membangun serangkaian unit tes. Setelah
itu pengembang akan berfokus
untuk mengimplementasikannya. Dalam XP
diperkenalkan istilah pair programming dimana proses penulisan program dilakukan
secara berpasangan. Dua programmer saling bekerjasama dalam satu komputer untuk
menulis program. Dengan melakukan ini akan didapat real time problem solving dan real
time quality assurance.
4. Pengetesan(Testing).
Tahap ini dilakukan pengujian kode pada unit test. Dalam Ekstreme Programming
diperkenalkan XP acceptaance test . Tes ini dilakukan oleh customer yang berfokus
kepada fitur dan fungsi sistem secara keseluruhan. Acceptance ini berasal dari user
stories yang diimplementasikan.
2.3 UML
UML adalah bahasa pemodelan untuk sistem atau perangkat lunak yang berparadigma
„berorientasi
objek‟.
Pemodelan
(modeling)
sesungguhnya
digunakan
untuk
penyederhanaan permasalahan-permasalahan yang komples sedemikian rupa sehingga
lebih mudah dipelajari dan dipahami (Nugroho, 2010) . Sedangkan menurut Herlawati
http://digilib.mercubuana.ac.id/
bahwa beberapa literature menyebutkan bahwa UML menyediakan sembilan jenis
diagram, yang lain menyebutkan delapan karena ada beberapa diagram yang digabung,
misanya diagram komunikasi, diagram urutan dan diagram pewaktuan digabung menjadi
diagram interaksi (Herlawati, 2011).
2.3.1 Model UML
Unified modeling language adalah bahasa standar untuk menulis rancangan
software.UML dapat digunakan untuk membangun dan mendokumentasikan kerangka
software.Disisi lain,dengan membangun rancangan arsitektur untuk digunakan para
konstruksi perusahaan, pembangun software membuat UML diagram untuk membantu
pengembang software untuk membangun software Sehingga lebih mudah untuk
dipahami,mudah untuk menentukan sistem dan mudah untuk menjelaskan desain system
[Pressman, 2010].
Diagram-diagram pada Unified Modeling Language (UML) dibagi menjadi 2 jenis
yaitu structure diagrams dan behavior diagrams. Structure Diagrams yaitu diagram yang
digunakan untuk menggambarkan data dan relasi paten yang terdapat pada sistem
informasi. Sedangkan Behavior Diagrams adalah diagram yang menyediakan analisa
dengan cara menggambarkan relasi yang dinamis antar objek yang mewakili sistem
informasi yang akan dibangun.Dalam perancangaaplikasi ini digunakan beberapa step
Diagram UML yang digunakan yaitu :
1. Use case Diagram ( Analisa sistem )
2. Activity Diagram ( Analisa Desain dan Sistem )
3. Sequence Diagram (Analisa dan Design sistem)
4. Class Diagram ( Analisa dan Design sistem ).
Menurut
(Widodo,2011),“Beberapa
literature
menyebutkan
bahwa
UML
menyediakan sembilan jenis diagram, yang lain menyebutkan delapan karena ada
beberapa diagram yang digabung,misanya diagram komunikasi,diagram urutan dan
diagram pewaktuan digabung menjadi diagram interaksi”. Namun demikian model-model
itu dapat dikelompokkan berdasarkan sifatnya yaitu statis atau dinamis.
Jenis diagram itu antara lain:
1. Diagram kelas (Class Diagram). Bersifat statis, Diagram ini memperlihatkan
himpunan kelas-kelas, antarmuka-antarmuka, kolaborasi-kolaborasi, serta relasirelasi. Diagram ini umum dijumpai pada pemodelan sistem berorientasi objek.
Meskipun bersifat statis, sering pula diagram kelas memuat kelas-kelas aktif.
http://digilib.mercubuana.ac.id/
2. Diagram paket (Package Diagram). Bersifat statis. Diagram ini memperlihatkan
kumpulan kelas-kelas, merupakan bagian dari diagram komponen.
3. Diagram
use-case
(Usecase
Diagram).
Bersifat
statis.
Diagram
ini
memperlihatkan himpunan use-case dan aktor-aktor (suatu jenis khusus dari
kelas). Diagram ini terutama sangat penting untuk mengorganisasi dan
memodelkan perilaku suatu sistem yang dibutuhkan serta diharapkan pengguna .
4. Diagram interaksi dan sequence (Sequence Diagram). Bersifat dinamis. Diagram
urutan adalah iterasiksi yang menekankan pada pengiriman pesan dalam suatu
waktu tertentu.
5. Diagram komunikasi (Communication diagram). Bersifat dinamis. Diagram
sebagai pengganti diagram kolaborasi UML yang menekankan organisasi
struktural dari objek-objek yang menerima serta mengirim pesan.
6. Diagram state chart (State chart diagram). Bersifat dinamis. Diagram status
memperlihatkan keadaan-keadaan pada sistem, memuat status (state), transisi,
kejadian serta aktivitas.
7. Diagram aktivitas (Activity Diagram). Bersifat dinamis. Diagram aktivitas adalah
tipe khusus dari diagram status yang memperlihatkan aliran dari suatu suatu
aktivitas ke aktivitas lainnya dalam suatu sistem. Diagram ini terutama penting
dalam pemodelan fungsi-fungsi suatu sistem dan memberi tekanan pada aliran
kendali antar objek.
8. Diagram komponen (Component diagram). Bersifat statis. Diagram komponen
ini memperlihatkan organisasi serta kebergantungan sistem/perangkat lunak pada
komponen-komponen yang telah ada sebelumnya.
9. Diagram deployment (deployment diagram). Bersifat statis.
Diagram
inimemperlihatkan konfigurasi saat aplikasi dijalankan (run-time). Memuat
simpul-simpul beserta komponen-komponen yang di dalamnya. Kesembilan
diagram ini tidak mutlak harus digunakan dalam pengembangan perangkat lunak,
semuanya dibuat sesuai kebutuhan. Pada UML dimungkinkan kita menggunakan
diagram-diagram lainnya misalnya data flow diagram, entity relationship
diagram, dan sebagainya.
http://digilib.mercubuana.ac.id/
2.2.2 Use Case Diagram
Use case adalah adalah deksripsi fungsi dari sebuah sistem dari perspektif
pengguna. Use case bekerja dengan cara mendeskripsikan tipikal interaksi antara
pengguna sebuah sistem (aktor) dengan sistemnya sendiri melalui sebuah cerita
bagaimana sebuah sistemdipakai.Use case diagram secara grafis menggambarkan
interaksi antara sistem, sistem eksternal dan pengguna. Dengan kata lain use case
diagram secara grafis mendeskripsikan siapa yang akan menggunakan sistem dan dalam
cara apa pengguna (user) mengharapkan interaksi dengan sistem itu. Use case secara
naratif digunakan untuk secara tekstual menggambarkan sekuensi langkah-langkah dari
setiap interaks.
Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case.
1. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem
informasi yang akan dibuat diluar sistem informasi yang akan dibuat itu sendiri,
jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu
merupakan orang.
2. Use case merupakan fungsionalitas yang disediakan sistem sebagai unitunit yang
saling bertukar pesan antar unit dan aktor.
2.2.3 Sequence Diagram
Diagram
sequence
menggambarkan
kelakuan
objek
pasa
use
case
dengan
mendeskripsikan waktu hidup objek dan massage yang dikirimkan dan diterima antar
objek. Oleh karena itu untuk menggambaran diagram sequene maka harus diketahui
objek – objek yang terlibat dalam sebuah use case beserta mode-mode yang dimiliki kelas
yang diinstansi menjadi objek itu, membuat diagram sequence juga dibutuhkan untuk
melihat scenario yang ada pada use case. (Rosa.A.S, M.salahudin,2014;165). Sequence
diagram digunakan untuk menggambarkan event yang dilakukan aktor eksternal pada
sistem atau inter system event dilihat dalam satu use case.
2.2.4 Activity Diagram
Activity Diagram adalah representasi secara grafis dari proses dan control flow dan
berfungsi untuk memperlihatkan alur dari satu aktivitas ke aktivitas yang lain serta
menggambarkan perilaku yang kompleks. Berikut ini adalah contoh activity diagram oleh
pressman ,2010.
2.2.5 Class Diagram
http://digilib.mercubuana.ac.id/
Class diagram menggambarkan sstruktur sistem dari segi pendefiisian kelas – kelas
yang akan dibuat untuk membangun sistem. Class diagram memiliki atribut dan metode
relasi.Atribut merupakan variabel – variable yang dimiliki oleh satu kelas ,Metode adalah
fungsi – fungsi yang dimiliki oleh suatu kelas. Kelas – kelas yang ada pada struktur
sistem harus dapat melakukan fungsi – fungsi sesuai dengan kebutuhan sistem sehingga
pembuat perangkat lunak atau programmer dapat membuat kelas – kelas didalam
perangkat lunak sesuai dengan perancangan class diagram (Rosa & M. Shalahuddin 141).
2.3 ME ( Mekanikal Elektrikal)
Pekerjaan ME (Mekanikal Elektrikal) pada proyek gedung Sinarmasland. Dikerjakan
oleh Teknisi ME , proyek gedung merupakan proyek yang terdiri dari beberapa disiplin
ilmu terutama struktur, arsitektur, dan Mekanikal elektrikal maupun pemipaan. MEP
sangat berhubungan dengan pekerjaan arsitektural. Di dalam satu proyek semua divisi
pekerjaan memiliki deadline yang harus segera diselesaikan. Hal ini sangat menguras
fikiran dan fisik . Dalam sebuah proyek , pekerjaan ME sangat berpengaruh satu sama
lain .Berikut ini adalah divisi-divisi ME dalam proyek gedung Sinarmaland Plaza:
2.3.1 Divisi Listrik.
Divisi listrik adalah divisi yang bertanggung jawab atas segala hal teknis yang
bersifat kelistrikan didalam gedung, banyak hal terjadi akibat tidak mematuhi prosedur
perawatan instalasi listrik di gedung. Karena pada dasarnya perawatan instalasi listrik
gedung tidak akan sama dengan perawatan instalasi listrik rumah tinggal. Dengan
dilalaikannya hal tersebut maka akan mengakibatkan beberapa hal yang tidak
menguntungkan terjadi, misalnya kebakaran akibat konsleting listrik, listrik menjadi tidak
stabil, penurunan tegangan dan lain sebagainya .
Untuk menghindari semua masalah itu, divisi listrik melakukan perawatan instalasi
secara berkala. Umumnya instalasi listrik hanya bertahan 10-15 tahun saja, setelah itu
instalasi wajib diperbaiki maupun diperbarui. Hal ini juga sudah dicantumkan dalam
PUIL 2000. Pekerjaan Divisi listrik mencakup beberapa hal ,berikut tanggung jawab
divisi listrik diantaranya adalah :
1. Perawatan TM & trafo atau taransformer
2. Perwatan kabel daya tegangan menengah
3. Perawatan panel listrik tegangan rendah
4. Pemasangan ( Instalasi) Kabel daya listrik ,tegangan rendah yaitu 220 Volt.
5. Armatur
lampu penerangan ,saklar,stop
kontak dan
http://digilib.mercubuana.ac.id/
key tag,
kabel
instalasi,penerangan, insalasi stop kontak dan sistem penangkal petir.
2.3.2 Divisi AC.
MVAC adalah pekerjaan instalasi AC (air conditioner) pada gedung Sinarmasland
plaza. Seiring dengan kemajuan teknologi, AC yang digunakan sebagai pendingin adalah
AC jenis split wall ,chiller dan cooling tower. Berikut adalah tugas-tugas dan tanggung
jawab divisi AC :
1. Melakukan Monitoring /ceklist Ac dalam ruang yang berbentuk AC split,
window, atau cassette dan kemampuanya (1pk, 1,5pk dan 2pk);
2. Melakukan pengukuran ampere Ac.
3. Melakukan pengisian Freon apabila diketahui tekanan ampere Ac dibawah
normal.
4. Melakukan Pengecekan jaringan listrik Ac dan Mcb pada panel.
5. Melakukan pengeekan Ac indor periha (instalasi, remot,bering,scun,fan motor
dll)
6. Melakukan Pengecekan mesin blower Ac (kompresor,kapasitor,instalasi dll)
7. Merapikan posisi Ac dan fasilitas (jaringan listrik, jaringan pipa, tempat)
8. Melakukan pergantian spertpart Ac (kapasitor, bearing , mcb, scun, fan motor
indoor, penggulungan spul dll).
9. Melakukan pergantian Ac apabila kondisi Ac tersebut sangat parah/rusak berat.
10. Membuat rekaman laporan kegiatan harian yang diketahui oleh petugas jurusan
dan leader.
11. Melakukan perbaikan segera setelah menerima tugas dari leader teknisi karena
adanya komplain
12. Bertanggung jawab dan memelihara alat-alat kerja teknisi (vacuum, tang ampere,
kunci-kunci dll)
13. Menulis kesimpulan mapping kinerja harian pada formulir yang telah tersedia
2.3.3 Mekanik
Mekanik didalam gedung adalah divisi yang pekerjaannya berhubungan dengan
mesin seperti : Genset, gondola, lift dan lain lain. Mekanik adalah juga termasuk dalam
ME ( Mekanikal Elektrikal)
.Divisi juga berhubungan dengan divisi listrik, seperti
contohnya mesin genset yang merupakan mesin mekanik adalah alat yang digunakan
untuk merubah tenaga gerak menjadi tenaga listrik, sehingga pekerjaan mekanik yang
berhubungan dengan arus listrik tetap berkoordinasi dengan divisi listrik.
http://digilib.mercubuana.ac.id/
2.3.4 Plumbing.
Plumbing adalah pekerjaan pemipaan yang terdapat pada bangunan gedung seperti
pipa untuk air bersih, air kotor, pipa ventilasi, dan air hujan. Pada pekerjaan pemipaan
ini biasanya menggunakan material pipa PVC, pipa PPR, atau pipa galvanis. Untuk air
bersih dan air panas/dingin biasanya menggunakan pipa PPR. pemipaan
pemadam
kebakaran/fire hydrant adalah pekerjaan MEP yang masih berhubungan dengan pemipaan
air khususnya untuk keperluan pemadam kebakaran jika terjadi kebakaran. Jenis
pekerjaan ini biasanya menggunakan pipa besi jenis SCH 40 untuk mengalirkan air
dengan tekanan bervariasi.
Sistem dari pekerjaan pemadam kebakaran pada bangunan hotel akan berkolaborasi
dengan pekerjaan elektrikal. Tiap ruangan kantor Sinarmasland Plaza dipasang alat
bernama smoke detector yang akan mendeteksi asap atau api yang berada di kamar
sehingga secara otomatis sistem pemadam kebakaran akan bekerja sendiri dengan
mengeluarkan air melalui alat yang disebut dengan sprinkler.
2.3.5 Elektronik.
Divisi elektronik adalah pekerjaan yang berhubungan dengan instalasi sistem-sistem
dihotel seperti fire alarm system, sistem tata suara, sistem telepon, sistem data, sistem
cctv, dan sistem MATV. Pekerjaan Mekanikal Pekerjaan yang berhubungan dengan alat
mesin besar seperti Lift .
2.4 Xampp
XAMPP merupakan paket web lengkap yang dapat dipakai untuk belajar
pemrograman web, khususnya PHP dan MySQL. XAMPP dapat didownload secara gratis
dan legal. (Nugroho, Bunafit, 2013).
Fungsinya XAMPP adalah sebagai server yang berdiri sendiri (localhost), yang terdiri
atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang
ditulis dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan
dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl.
http://digilib.mercubuana.ac.id/
Gambar 2.7 contoh tampilan XAMPP
2.5 MySQL
Menurut (Raharjo, 2011), MySQL merupakan RDBMS (server database) yang
mengelola basis data dengan cepat, menampung dalam jumlah sangat besar dan dapat
diakses oleh banyak user. Menurut Nugroho MySQL adalah software atau program
Database Server. Sedangkan SQL adalah bahasa pemrograman dari MySQL atau dikenal
dengan bahasa permintaan (query) dalam database server. SQL juga dipakai dalam
software database server lain, seperti SQL Server, Oracle, PostgreSQL dan lainnya.
Berdasarkan pendapat yang dikemukakan di atas dapat ditarik kesimpulan bahwa
MySQL adalah suatu software atau program yang digunakan untuk membuat sebuah
database yang bersifat open source. MySQL adalah sebuah perangkat lunak sistem
manajemen basis data SQL atau DBMS yang multithread, multi -user, dengan sekitar
6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai
perangkat lunak gratis dibawalisensi GNU General Public License (GPL), tetapi
mereka
juga
menjual
dibawah
lisensi
komersial
untuk
kasus -kasus dimana
penggunaannya tidak cocok dengan penggunaan GPL. MySQL adalah Relational
Database Management System (RDBMS) yang didistribusikan secara gratis dibawah
lisensi
GPL
(General
Public
License).
Dimana
setiap
orang
bebas
untuk
menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat
http://digilib.mercubuana.ac.id/
komersial.MySQL
sebenarnya
merupakan
turunan
salah
satu konsep
utama
dalam database sejak lama, (Structured Query Language).
SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau
seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan
mudah secara otomatis. Keandalan
suatu
sistem
database (DBMS) dapat diketahui
dari cara kerja optimizer -nya dalam melakukan proses perintah-perintah SQL, yang
dibuat
oleh
user
maupun program -program aplikasinya. Sebagai database
server,MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya
dalam query data. Hal ini terbukti untuk query yang dilakukan oleh single user,
kecepatan query MySQL bisa sepuluh kali lebih cepat dari PostgreSQL dan lima kali
lebih cepat dibandingkan Interbase. MySQL memiliki beberapa keistimewaan, antara
lain :
1. Portabilitas. MySQL
dapat
berjalan
stabil pada berbagai sistem operasi
seperti Windows, Lin ux,FreeBSD, Mac Os X Server, Solaris, Amiga, dan
asih banyak lagi.
2. Open Source.MySQL
didistribusikan secara open source,dibawah lisensi GPL
sehingga dapat digunakan secara cuma -cuma.
3. „Multiuser‟. MySQL dapat digunakan oleh beberapa user dalam waktu yang
bersamaan tanpa mengalami
2.6 Apache
Apache adalah sebuah nama web server yang bertanggung jawab pada requestresponse HTTP dan logging informasi secara detail. Selain itu, Apache juga diartikan
sebagai suatu web server yang kompak, modular, mengikuti standar protokol HTTP.
Apache adalah perangkat lunak yang digunakan untuk mengakses dan mengatur
konfigurasi Apache web server (Sibero, 2011)
Kelebihan Apache server :
1. Relasi, dapat disebut dengan tabel yang terdiri dari baris dan kolom.
2. Mudah diinstall.
3. Mampu beroperasi pada berbagai platform sistm operasi
4. Mudah menkonfigurasinya
http://digilib.mercubuana.ac.id/
2.7 Jquery
Jquery merupakan libary atau framework dari javascript yang dapat
mempermudah pengolahan DOM pada halaman website . Jquery menekankan interaksi
antara javascript dan HTML. Pada perkembangan Jquery tidak sekedar sebagai
framework javascript tetapi memiliki banyak kelebihan diantaranya kemudahan akses ke
bagian page atau halaman tertentu dan mempersingkat kode javascript sehingga lebih
mudah dan menyingkat waktu. JQuery merupakan suatu framework (library)
Javascriptyang menekankan bagaimana interaksi antara Javascript dan HTML. Fitur
utama dari JQuery diantaranya:
1. Dapat mengakses elemen dalam dokumen Javascript khusus,untuk mengakses
suatu bagian tertentu dari halaman, harus mengikuti aturan Document Object
Model dan pengaksesan harus secara spesifik menyesuaikan denganstruktur
HTML.
2. Mengubah tampilan halaman website CSS ( Cascading Style Sheet ) menawarkan
metode yang cukup handal dalam mengatur dan mempercantik halaman web. 22
3. Memberikan fasilitas untuk mengubah isi dari dokumen hanya dengan
beberapa baris perintah.
4. Dalam merespon interaksi user, Javascript memiliki beberapa even t-handling
seperti onclick untuk menangani event saat terjadi click.
5. Animasi ,pada dokumen animasi seringkali disertakan dalam suatu halaman
web untuk menambah keindahan.
6. Mengambil informasi dari server tanpa harus me -refresh halaman, mengambil
informasi dari server tanpa refresh halaman merupakan salah satu konsep dasar
yang dikenal dengan nama AJAX (Asynchronous Javascript and XML).
2.8 Javascript
Javascript adalah bahasa yang berbentuk kumpulan skrip yang pada fungsinya
berjalan pada suatu dokumen HTML, sepanjang sejarah internet bahasa ini adalah
bahasa skrip pertama untuk web. Bahasa ini adalah bahasa pemrograman untuk
memberikan kemampuan tambahan terhadap bahasa HTML dengan mengijinkan
pengeksekusian perintah perintah di sisi user, yang artinya di sisi browser bukan di
sisi server web.
Javascript bergantung kepada browser ( navigator ) yang memanggil halaman web
yang berisi skrip - skrip dari Javascript dan tentu saja terselip di dalam dokumen
HTML.
http://digilib.mercubuana.ac.id/
2.9 Web
Web yang tidak lain merupakan layanan yang didapat oleh pemakai komputer yang
terhubung ke internet. Browser merupakan perangkat lunak untuk mengakses halaman
web seperti Internet Explorer, Mozilla Firefox, Opera, Safari, dan lain-lain.
(Kustiyahningsih, 2011). Menurut (Simarmata, 2010) “Web dapat diartikan sebagai alat
untuk dapat menciptakan sistem informasi global yang mudah berdasarkan pada
hiperteks”.
Dapat disimpulkan Website adalah sebuah tempat di internet, yang menyajikan
informasi dengan berbagai macam format data seperti text, image, bahkan video dan
dapat diakses menggunakan berbagai aplikasi client shingga memungkinkan penyajian
informasi yang lebih menarik dan dinamis dengan pengelolaan yang terorganisasi.
Adapun jenis-jenis web adalh sebagai berikut :
A. Jenis-jenis web bedasarkan sifat atau style.
1. Website Dinamis, merupakan sebuah website yang menyediakan konten
atau isi yang selalu berubah-ubah setiap saat. Bahasa pemrograman yang
digunakan antara lain PHP, ASP, .NET dan memanfaatkan database
MySQL atau MS SQL.
2. Website Statis, merupakan website yang kontennya sangat jarang
berubah. Bahasa pemrograman yang digunakan adalah HTML dan belum
memanfaatkan database.
Berdasarkan pada fungsinya ,website terdiri atas :
a. Personal website .Yaitu website yang terdiri dari informasi pribadi seseorangm.
b. Commercial website. Yaitu website yang dimiliki oleh ebuah perusahaan yang
bersifat bisnis.
c. Government website . Yaitu website yang dimiliki oleh pemerintah atau
pendidikan yang bertujuan memeberikan layanan kepada pengguna.
d. Non Profit Organization website,dimiliki oleh organisasi yang bersifat non-profit
atau tidak bersifat bisnis.
Ditinjau dari segi bahasa pemrograman yang digunakan web site terbagi atas:
1. Server Side, merupakan website yang menggunakan bahasa pemrograman yang
tergantung kepada tersedianya server. Seperti PHP, ASP, .NET dan lain
http://digilib.mercubuana.ac.id/
sebagainya. Jika tidak ada server, website yang dibangun menggunakan bahasa
pemrograman di atas tidak akan berfungsi sebagaimana mestinya.
2. Client
Side,
adalah
website
yang
tidak
membutuhkan
server
dalam
menjalankannya, cukup diakses melalui browser saja. Misalnya, HTML.
3. Client
Side,
adalah
website
yang
tidak
membutuhkan
server
dalam
menjalankannya, cukup diakses melalui browser saja. Misalnya, HTML.
2.10 PHP
PHP atau kependekan dari hypertext preprocessor adalah salah satu bahasa
pemrograman open source yang sangat cocok atau dikhususkan untuk pengembangan
Web dan dapat di tanamkan pada sebuah skrip HTML. Bahasa PHP dapat dikatakan
menggambarkan beberapa bahasa pemrograman sistem kerja dari PHP diawali dengan
permintaan yang beasal dari halaman website oleh browser. Berdasarkan URL atau
alamat website dalam jaringan internet, browser akan menemukan sebuah alamat
dari webserver, mengidentifikasi halaman yang dikehendaki,dan menyampaikan segala
informasi yang dibutuhkan oleh webserver.
Selanjutnya webserver akan mencarikan berkas yang diminta dan menampilkan
isinya di browser. Browser yang mendapatkan isinya segera menerjemahkan kode
HTML dan menampilkanny. Menurut (Kustiyahningsih,2011) PHP adalah skrip bersifat
server-side yang ditambhakna kedalam html . PHP sendiri juga disebut Personal Home
Page Tools , skrip ini akan membuat suatu aplikasi dapat di integrasikan ke dalam HTML
sehingga suatu halaman web tidak lagi bersifat statis, namun menjadi bersifat dinamis.
Sifat server side berarti pengerjaan skrip dilakukan di server, setelah itu hasilnya
dikirimkan ke browser”.
Beberapa alasan yang menjadi dasar pertimbangan mengapa menggunakan PHP:
1. Mudah dipelajari, alasan tersebut menjadi salah satu alasan utama untuk
menggunakan PHP.
2. Lintas platform, artinya PHP dapat atau mudah diaplikasikan ke berbagai
platform OS (Operating Sytem) dan hampir semua browser juga mendukung
PHP.
3. Gratis, bersifat Open Source.
4. PHP memiliki tingkat akses yang cepat.
5. Didukung oleh beberapa macam web server, PHP mendukung beberapa web
server, seperti Apache, IIS, Lighttpd, Xitami.
http://digilib.mercubuana.ac.id/
6. Mendukung database, PHP mendukung beberapa database, baik yang gratis
maupun yang berbayar, seperti MySQL, PostgreSQL, mSQL, Informix, SQL
server, Oracle.
Berikut contoh sintaks dasar pada PHP:
Gambar 2.8 : Contoh kode html
2.11 Notepad++
Notepad++ adalah evolusi dari editor teks notepad biasa yang sudah ada sebagai
software bawaan di OS microsoft windows. Notepad++ dikhususkan sebagai software
untuk membantu para programmer dalam mengedit kode dengan membedakan kode-kode
tertentu dengan warna. Sofware pengedit kode ini mendukung lebih dari 50 bahasa
pemrograman yang ada.
http://digilib.mercubuana.ac.id/
Gambar 2.9 contoh tampilan html dengan Notepad++
Keunggulan Notepad++ Dalam Software Web Programming yaitu:
1. Simple, Ringan dan Cepat dibandingkan dengan text editor lainnya, notepad++
tidak perlu menunggu loading opening library, terlebih seperti pada software
adobe dreamweaver dan eclipse apa lagi untuk PC / Laptop yang memiliki
specification yang rendah.
2. Bracket
Matching
atau
(berpasangan),biasanya
bisa
dibilang
digunakan
mengumpulkan
pada
saat
yang
menuliskan
sesuai
syntax
percabangan,perulangan dan bagian utama program. Fungsi ini berguna untuk
kita jika menuliskan block program yang panjang dan terkadang kita lupa untuk
menutup block program yang telah kita
3. Syntax Highlighting tampilan source code,disini kita bisa melihat warna pada
setiap fungsi dari syntax. Jadi kita tidak bingung menggolongkan kegunaan
syntax yang kita tulis dan dapat dibaca dengan mudah. Contoh tulisan yang
berwarna hijau biasanya terdapat pada statment jika kita menuliskan komentar
pada sebuah program.
4. Syntax Folding atau melipat source code, ini hampir sama seperti bracket
matching sebelumnya. Jika bracket matching digunakan untuk menunjukan awal
dan akhir suatu block program. Syntax Folding disini tidak jauh beda tetapi,
digunakan untuk menyembunyikan block program tertentu agar terlihat lebih
ringkas tampilannya agar programmer tidak perlu melihat seluruh syntaxnya apa
lagi jika sudah sampai lebih 1000 baris lebih.
5. Quick Color Picker++ fungsi ini berguna pada saat kita menuliskan kode warna
pada html atau pun CSS tetapi tidak harus menuliskan kodenya terlebih jika kita
lupa kode pada warna yang kita inginkan, biasanya akan muncul kotak dengan
banyak aneka warna yang kita tinggal pilih,setelah memilih nanti kode warna
tersebut akan muncul.
6. FingerText, biasa digunakan untuk menuliskan bahasa PHP di notepad++,fungsi
ini berfungsi untuk memudahkan pengetikan syntax dengan kata tertentu sebagai
pemicu/trigger
dan
menggantikannya
dengan
tombol TAB. Contoh kata g akan berubah menjadi $_GET.
http://digilib.mercubuana.ac.id/
menekan
http://digilib.mercubuana.ac.id/
Download