bab ii landasan teori

advertisement
BAB II
LANDASAN TEORI
Dalam bab ini menjelaskan teori-teori baik umum maupun khusus, tentang
apa saja yang mendukung dalam pembuatan sistem ini. meliputi teori dasar sistem,
teori pengembangan sistem, serta pembahasan mengenai PHP dan mySQL yang
mendukung dalam pembuatan sistem ini.
2.1 Teori umum
2.1.1 Sistem
2.1.1.1
Pengertian Sistem
Menurut Connolly dan Begg(2010, p266) sistem menjelaskan batasan suatu
aplikasi yang utama.
Suatu sistem sangatlah di butuhkan dalam perusahaan atau instansi,
karena sistem adalah hal penunjang dalam kinerja perusahaan atau instansi,
baik yang berskala kecil atau besar, agar dapat berjalan dengan baik
diperlukan kerjasama diantara elemen yang terkait dalam sistem tersebut.
2.1.1.2
Elemen Sistem
Sistem terdiri dari elemen-elemen yang saling berkaitan, elemen
tersebut menyusun sebuah sistem yang terdiri dari:
1.
TUJUAN
Tujuan dari sistem sangat menentukan masukan yang dibutuhkan suatu
sistem.
2.
BATASAN
9
10
Dalam mencapai suatu tujuan dari sistem dibutuhkan batasan-batasan
suatu sistem dengan sistem yang lainnya atau lingkungan luarnya.
Batasan suatu sistem menunjukkan ruang lingkup dari sistem tersebut.
3.
KONTROL
Kontrol merupakan pengawasan dari pelaksanaan pencapaian tujuan
sistem yang berupa asal masukan, frekuensi masukan data dan jenis
masukan.
4. INPUT
Input merupakan bagian dari sistem yang bertugas untuk menerima data
dapat berupa asal masukan, frekuensi masukan data dan jenis masukan
data.
5.
PROSES
Proses merupakan bagian yang mengolah data menjadi informasi sesuai
dengan keinginan pemakai.
6.
OUTPUT
Output merupakan keluaran atau tujuan dari sistem yang didapat dari
input dan proses yang dilakukan.
7.
UMPAN BALIK
Dalam suatu sistem yang baik dibutuhkan adanya umpan balik yang
tujuannya sebagai perbaikan dan pemeliharaan.
2.1.2 Perangkat Lunak
2.1.2.1
Pengertian Perangkat Lunak
Menurut Pressman (2010, p4) perangkat lunak atau sering disebut
software adalah sebuah instruksi yang apabila dijalankan menghasilkan
fungsi dan hasil yang diinginkan. Perangkat lunak juga berarti struktur data
yang dapat memanipulasi informasi. Deskripsi informasi dari ke dua poin ini
menjelaskan operasi dan penggunaan dari perangkat lunak
11
2.1.2.2
Karakteristik Perangkat Lunak
Perangkat lunak lebih mengacu kepada logical daripada physical
sistem elemen. Oleh karena itu, perangkat lunak mempunyai karakteristik
yang membedakan dengan perangkat keras yaitu :
1. Perangkat lunak dikembangkan atau direkayasa bukan diciptakan.
2. Perangkat lunak tidak akan habis atau hilang.
3. Meskipun industri bergerak ke arah komponen berbasis
konstruksi tetapi sebagian besar perangkat lunak tetap dibangun
atau dikembangkan..
Berikut adalah karakteristik perangkat lunak (software):
1.
Perangkat lunak dikembangkan atau
tidak dibuat(manufactured)
.Biaya (cost) perangkat lunak terpusat pada perekayasaan. Jadi proyek
perangkat lunak tidak dapat dijalankan seperti proses pemanufakturan.
2. Perangkat lunak tidak habis terpakai.
Tingkat kegagalan perangkat keras (hardware) yang tinggi pada
awalnya, sebagai akibat dari kesalahan perancangan atau kesalahan
pembuatan di pabrik. Setelah diperbaiki, tingkat kegagalan menurun
sampai ke suatu tingkat yang stabil untuk beberapa periode waktu.
Seiring dengan berlalunya waktu, tingkat kegagalan meningkat akibat
akumulasi pengaruh debu, getaran, suhu tinggi, dan banyak masalah
lingkungan lainnya terhadap komponen perangkat keras (hardware).
Dengan kata lain, perangkat keras mulai habis terpakai. Sedangkan
pada perangkat lunak, tingkat kegagalan yang tinggi, adalah sebagai
akibat yang tidak diperkirakan. Setelah diperbaiki, tingkat kegagalan
tersebut akan menurun sampai ke tingkat yang stabil. Namun,
selama masa itu, perangkat lunak akan mengalami perubahanperubahan (selama maintenance). Dimana pada perubahan-perubahan
itu, akan ditemukan kesalahan-kesalahan baru sehingga tingkat
kegagalan akan meningkat lagi. Dan lama kelamaan, perubahanperubahan yang dilakukan dan tingkat kegagalan yang makin
meningkat tersebut, membuat perangkat lunak menjadi usang.
12
3. Kebanyakan perangkat lunak dibuat sesuai kebutuhan, tidak dirakit
dari komponen-komponen yang ada. Setelah perangkat keras
dirancang, komponen-komponennya dapat dipilih dari katalog.
Sedangkan, perangkat lunak tidak mempunyai katalog untuk
komponen-komponennya.
2.1.2.3
Pengertian Rekayasa Perangkat Lunak
Menurut Pressman (2010,p14), Rekayasa Perangkat Lunak adalah
pembuatan
dan
penggunaan
prinsip-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 proses perangkat lunak yang lengkap dengan
mengidentifikasi sejumlah aktifitas kerangka kerja yang berlaku untuk semua
proyek perangkat lunak, terlepas dari hal ukuran dan kompleksitas.
•
Fokus pada kualitas (A Quality Focus)
Pendekatan teknik apapun (termasuk rekayasa perangkat lunak) harus
bersandar pada komitmen organisasi terhadap suatu mutu. Total
kualitas manajemen dan filosofi yang sama mendorong budaya
perbaikan proses yang berkesinambungan dan budaya inilah yang
pada akhirnya mengarah pada pengembangan pendekatan yang
semakin dewasa untuk rekayasa perangkat lunak. Fondasi yang
mendukung rekayasa perangkat lunak adalah fokus pada kualitas.
•
Proses (Process)
Dasar untuk rekayasa perangkat lunak adalah lapisan (layer) proses.
Proses pada rekayasa perangkat lunak sebagai perekat yang
memegang teknologi dan memungkinkan pengembangan perangkat
lunak yang rasional dan tepat waktu.
13
•
Metode (Method)
Metode rekayasa perangkat lunak menyediakan teknis “bagaimana”
untuk membangun perangkat lunak. Metode mencakup tugas yang
mencakup analisis kebutuhan, perancangan, konstruksi program,
pengujian, dan pemeliharaan (maintenance).
•
Alat Bantu (Tools)
Alat bantu otomatis atau semi otomatis menyediakan dukungan untuk
lapisan(layer) proses dan metode. Ketika alat diintegrasikan maka
informasi yang dibuat oleh salah satu alat dapat digunakan oleh alat
lainnya, sebuah sistem untuk mendukung perangkat lunak.
2.1.2.4
Sistem Development Life-Cycle (Waterfall Model)
Menurut Roger S. Pressman (2010, p39), classic life cycle atau
waterfall model adalah model klasik yang bersifat sistematis, berurutan
dalam membangun software. Berikut adalah gambaran dari waterfall model :
Gambar 2. 1 Sistem Development Life Cycle
Sumber: (Pressman, 2010, p39).
Adapun tahapan-tahapan waterfall model adalah sebagai berikut:
1.
Communication
Langkah ini merupakan Analisis sistem (sistem engineering and
analysis) terhadap kebutuhan software, serta tahap untuk mengumpulkan
data dengan mengadakan pertemuan. Perangkat lunak merupakan
bagian terbesar dari sistem oleh karena itu
perancangan
perlu
untuk
dalam
menentukan kebutuhan
melaksanakan
bagi
semua
14
elemen
sistem.
terhubung
dengan
Hal
ini
penting
elemen-elemen
karena perangkat lunak akan
lain
seperti perangkat keras,
pengguna dan basis data.
2. Planning
Proses ini merupakan proses lanjutan dari communication, tahapan ini
akan menghasilkan dokumen berupa user requirement atau bisa
dikatakan sebagai data yang berkaitan dengan keinginan user dalam
pembuatan software termasuk rencana yang akan dilakukan. Proses
pengumpulan kebutuhan diintensifkan dan
difokuskan
khususnya
terhadap perangkat lunak. Untuk mengerti pembuatan program seorang
analis harus memahami informasi yang dibutuhkan perangkat lunak
tersebut, fungsi-fungsi, performa, dan antarmuka.
3. Modelling
Proses ini akan menerjemahkan syarat dan ketentuan dalam kebutuhan
user (user requirement) dalam sebuah perancangan software yang dapat
di perkirakan sebelum dilakukan coding. Perancangan perangkat lunak
difokuskan pada empat atribut yang berbeda dari program : data struktur,
arsitektur perangkat lunak, prosedur detil, dan karakteristik antarmuka.
4.
Construction
Construction merupakan proses membuat kode atau biasa di sebut
coding. Pengkodean mengubah perancangan kedalam bentuk yang dapat
dibaca atau dikenali komputer. Programmer akan menerjemahkan
transaksi yang diminta oleh user. Tahapan ini adalah tahapan yang sangat
nyata dalam mengerjakan software, dengan kata lain penggunaan
komputer secara maksimal berada pada tahapan ini. Setelah tahapan ini
selesai maka akan dilakukan pengujian terhadap software yang telah di
buat. Proses testing ini difokuskan pada:
a. Logical internal of the software
Pengujian terhadap statement perangkat lunak
b. Functional external
Tujuannya adalah menemukan kesalahan dari sistem yang kemudian
15
akan diperbaiki. Pada pengujian ini, input yang diberikan harus
mendapatkan output yang sesuai dengan yang diharapkan.
5. Deployment
Tahapan ini bisa dikatakan sebagai tahapan akhir dalam pembuatan
software atau sistem. Setelah melalui tahapan-tahapan sebelumnya maka
sistem yang sudah jadi akan di gunakan. Kemudian software yang sudah
dibuat harus dilakukan pemeliharaan secara berkala.
2.1.3 Basis Data (Database)
2.1.3.1
Pengertian Database
Pengertian basis data cukup beragam banyak sumber yang telah
mendefinisikan, berikut adalah sumber yang kami untuk pengertian basis
data:
Menurut Connolly dan Begg (2010, p65), pengertian database
adalah kumpulan data yang terhubung secara logis yang dipakai bersama dan
deskripsi dari data ini dirancang untuk memenuhi kebutuhan informasi
sebuah organisasi.
Dari sumber di atas didapat pengertian database adalah suatu sistem
penyimpanan data yang tersusun atas sekumpulan data yang secara logika
saling terkait yang dirancang untuk memenuhi kebutuhan informasi
perusahaan. Model database relasional adalah sistem yang banyak digunakan
karena struktur logikalnya yang sederhana. Pada model relasional seluruh
data disusun secara logikal dalam relasi-relasi atau tabel. Setiap relasi terdiri
dari baris, dan kolom dari relasi yang diberi nama tertentu disebut atribut.
Sedangkan baris dari relasi disebut tuple dan setiap tuple (baris) memiliki satu
nilai untuk setiap attribut.
Database yang tabel-tabelnya saling terhubung dikatakan memiliki
relasi. Karena tidak ada relasi yang memiliki dua tuple yang sama, maka
16
setiap baris dapat didefinisikan secara untuk dengan menggunakan primary
key.
Munculnya
sebuah
atribut
dalam
beberapa
relasi
dapat
mempresentasikan hubungan antara tuple dari relasi tersebut.
Pemakai database dapat berupa orang atau program aplikasi. Orang
biasanya menggunakan database dari terminal dan mengambil data dan
informasi dengan menggunakan query language. Query adalah pemintaan
informasi dari database, dan query language adalah bahasa khusus yang userfriendly yang memungkinkan computer menjawab query.
Pendekatan basis data adalah memisahkan struktur data dari program
aplikasi dan menyimpannya dalam database. Database merupakan sistem
penyimpanan record terkomputerisasi yang bertujuan untuk pemeliharaan
informasi dan tersedia pada saat dibutuhkan. Dalam menganalisa kebutuhan
informasi suatu organisasi, kita berusaha menentukan entity, attribute, dan
relation.Teknologi basis data memperbolehkan sekumpulan data dengan
berbagai tipe (teks, angka, gambar, suara, dan lain-lain) disimpan dalam
komputer dan digunakan secara efisien tanpa adanya duplikasi oleh aplikasi
yang berhubungan.
2.1.3.2
Definisi DBMS
Menurut Connolly dan Begg (2010 , p66), pengertian DBMS adalah
sebuah sistem piranti lunak yang memungkinkan user untuk mendefinisikan,
membuat, menjaga, dan mengontrol akses ke dalam basis data.
2.1.3.3
Tujuan DBMS
Tujuan utama pengolahan data dalam basis data adalah agar dapat
memperoleh data yang dicari dengan mudah dan cepat. Pemanfaatan basis
data dilakukan untuk memenuhi sejumlah tujuan seperti berikut ini :
1. Kecepatan dan kemudahan (speed)
2. Efisiensi ruang penyimpanan (space)
3. Keakuratan (accuracy)
17
4. Ketersediaan (availability)
5. Kelengkapan (completeness)
6. Keamanan (security)
7. Kebersamaan pemakai (sharebility)
2.1.3.4
Komponen – Komponen DBMS
Menurut Connolly dan Begg (2010, p68), Database Management
Sistem (DBMS) memiliki 5 komponen penting, yaitu:
1.
Hardware (Perangkat Keras)
Dalam menjalankan aplikasi dan DBMS diperlukan perangkat keras.
Perangkat keras dapat berupaa single personal computer, single mainframe,
sampai jaringan komputer. Perangkat keras yang digunakan bergantung pada
persyaratan dari organisasi dan DBMS yang digunakan.
2. Software (Perangkat Lunak)
Komponen perangkat lunak meliputi DBMS software dan program aplikasi
beserta Sistem Operasi, termasuk perangkat lunak tentang jaringan bila
DBMS digunakan dalam jaringan seperti LAN (Local Area Network).
3.
Data
Data merupakan komponen terpenting dari DBMS dan juga merupakan
komponen penghubung antara komponen mesin (Hardware dan Software)
dan komponen human (Procedures dan People).
4.
Prosedur
Prosedur merupakan panduan dan instruksi dalam membuat desain dan
menggunakan basis data Penggunaan dari sistem dan staf dalam mengelola
basis data membutuhkan prosedur dalam menjalankan sistem dan mengelola
basis data itu sendiri. Prosedur di dalam basis data dapat berupa: login di
dalam basis data, penggunaan sebagian fasilitas DBMS, cara menjalankan
dan memberhentikan DBMS, membuat salinan backup database, memeriksa
18
hardware dan software yang sedang berjalan, mengubah struktur basis data,
meningkatkan kinerja atau membuat arsip data pada media penyimpanan
sekunder.
5.
Manusia
Komponen terakhir yaitu manusia sendiri yang terlibat dalam sistem tersebut.
Komponen ini meliputi data and database administrator, database designers,
application developers, dan end-users.
2.1.3.5
Diagram Alur Data (DAD)
Diagram alur data (DAD) atau data flow diagram(DFD) adalah suatu
teknik analisa struktur dimana sistem analyst bisa meletakkan semua
representasi grafis dari proses data yang melalui organisasi (Kendall, 2005,
p192). DFD mampumenggambarkan sistem informasi secara logikal maupun
fisikal. DFD memiliki empatjenis simbol, yaitu : aliran data (data
flow),penyimpanan data (data store), proses (proccess), sumber (source).
Menurut Whitten, (2004, p334), “Data Flow Diagram (DFD) is a
tool that depicts the flow of data through a sistem and the work or processing
performed by that sistem” , dapat diartikan sebagai berikut, DFD adalah
sebuah alat yang menggambarkan aliran data sampai sebuah sistem selesai
dan kerja atau proses dan dilakukan dalam sistem tersebut.
2.1.3.6
Jenis-jenis DFD
Jenis-jenis DFD antara lain:
1.
Level 0 (Diagram konteks) Level ini terdapat sebuah proses yang berada
di posisi pusat.
2. Level 1 (Diagram Nol) Level ini merupakan sebuah proses yang terdapat
di level nol yang dipacahkan menjadi beberapa proses lainnya.
3. Level 2 (Diagram Rinci) Pada level ini merupakan diagram yang
merincikan diagram dari level 1
19
• Tanda ‘*’ digunakan hanya jika proses tersebut tidak bisa dirincikan lagi.
Contoh : 2.0*, artinya proses level rendah tidak bisa diperinci lagi.
• Penomoran yang dilakukan berdasarkan urutan proses.
2.1.4 UML(Unified Modeling Language )
2.1.4.1
Pengertian UML(Unified Modeling Language )
Menurut Whitten (2004,p430), UML adalah sebuah kumpulan dari
konvensi
pemodelan
yang
digunakan,untuk
menentukan
atau
menggambarkan sebuah sistem software yang terkait dengan objek.
2.1.4.2
Class diagram
Menurut Whitten (2004,p455), adalah gambar grafis menegnai
struktur objek statis sebuah sistem menunjukan kelas-kelas ojek yang
menyususn sebuah sistem dan juga hubungan antara kelas objek tersebut.
Gambar 2. 2 Contoh Class Diagram
Sumber : http://achmatim.net/wp-content/uploads/2010/01/class-diagrampenjualan.png
20
2.1.4.3
Use Case Diagram
Menurut Whitten (2004,p271), Use Case Diagram adalah diagaram
yang menggambarkan interaksi antara sistem dengan sistem eksternal atau
pengguna. Secara grafis Use Case Diagram menggambarkan siapa yang akan
menggunakan sistemdan dengan cara apa pengguna mengharapkan interaksi
dengan sistem.
Use case sendiri menggambarkan interaksi antara sistem,sistem
eksternal, dan user, dengan kata lain mendeskripsikan siapa yang
menggunakn sistem dan dengan cara apa pengguna mengharapkan interaksi
dengan sistem itu.
Gambar 2. 3 contoh Usecase Diagram
Sumber: http://staf.cs.ui.ac.id/WebKuliah/IKI40972/review/sample-usecase.gif
21
2.1.4.4
Activity Diagram
Menurut Whitten (2004,p450), Activity Diagram adalah diagram
yang secara grafis menggambarkan aliran aktifitas baik proses bisnis atau use
case. Diagram ini juga dapat digunakan untuk memodelkan aksi yang akan
dilakukan saat sebuah operasi di eksekusi dan memodelkan hasil dari aksi
tersebut.
Gambar 2. 4 Contoh Activity Diagram
Sumber : http://ahdazul.blog.ugm.ac.id/files/2011/05/LOGIN.jpg
2.1.4.5
Sequence Diagram
Sequence diagram menggambarkan bagaimana objek berinteraksi satu
sama lain melalui pesan dalam use case atau suatu operasi. Sequence diagram
menggambarkan bagaimana pesan dikirim dan diterima antara objek dan
dalam satu urutan. Sebuah sequence diagram memiliki aktor beserta dengan
22
pesan dan fungsi dimana pesan tersebut dikerjakan dengan berurutan seperti
gambar berikut :
Gambar 2. 5 Contoh Sequence Diagram
Sumber: http://rahmadhidayat1.blog.ugm.ac.id/files/2010/04/4.gif
2.1.4.6
Flowchart
Flowchart adalah penggambaran secara grafik dari langkahlangkah
dan urut-urutan prosedur dari suatu program. Flowchart menolong analis dan
programmer untuk memecahkan masalah kedalam segmen-segmen yang
lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam
pengoperasian. Flowchart biasanya mempermudah penyelesaian suatu
masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.
23
Simbol-simbol flowchart yang biasanya dipakai adalah simbolsimbol
flowchart standar yang dikeluarkan oleh ANSI dan ISO.
Gambar 2. 6 Simbol Flowchart Proses
Sumber: http://3.bp.blogspot.com/vnYD3IK4Bxk/TbbVouDKeTI/AAAAAAAAAKs/rSkJNRDjmSs/s1600/Flowchart_img_3.jpg
24
Gambar 2. 7 Simbol Flowchart Standar
Sumber: http://2.bp.blogspot.com/RkfapgwEn0Y/TbbrQi_8NzI/AAAAAAAAAMI/Ri8xfTmlq3E/s640/simbol+flowchart_Page_1.j
pg
25
Gambar 2. 8 Simbol Flowchart Tambahan
Sumber: http://2.bp.blogspot.com/-CQDFhEZEUhQ/T444q4oewI/AAAAAAAAACU/Ty04sRts06g/s1600/Flowchart+symbol.jpg
2.1.5 Pengertian Web
26
Menurut Williams & Sawyer (2007, p63) tentang World Wide Web
(www), biasa disebut dengan web,teknologi berbasis multimedia yang
memungkinkan anada mengakses lebih dari sekedar teks.web juga dikenal
sebagai sistem yang saling berhubungan pada komputer internet(disebut juga
server) yang mana mendukung dokumen dengan format spesial dalam bentuk
multimedia.
2.1.6 Hypertext Markup Language(HTML)
Menurut Shelly,Woods,dan Dorin(2008,p8) HTML adalah sebuah
bahasa penulisan yang digunakan untuk membuat dokumen dalam world
wide web, HTML menggunakan seperangkat instruksi khusus yang disebut
tags untuk mendeskripsikan struktur atau layout dari sebuah dokumen web,
serta menentukan bagaimana halaman tersebut di tampilkan di browser.
Menurut
Shelly,Woods,danDorin(2008,p9)HTML
mengkombinasikan tags deskriptif dan tags khusus yang menunjukan format
style bagaimana seharusnya suatu dokumen di tampilkan dalam web browser,
elemen-elemen tersebut termasuk heading, paragraph, hyperlink, list,
images, dan masih banyak lagi, kebanyak elemen HTML terdiri dari 3 bagian
yaitu tags pembuka, isi , dan tags penutup.
2.1.7 Cascading Style Sheet (CSS)
Menurut
Shelly,Woods,danDorin(2008,p10)
CSS
adalah
sekumpulan kode yang memungkinkan untuk mengontrol sebuah elemen di
dalam sebuah halaman web atau sekumpulan halaman website.
2.1.8 Web Application
Menurut Conallen(2003,p9), Web Application adalah sistem web
yang memungkinkan user untuk mengeksekusi logika bisnis menggunakan
27
web browser. Web Application membangun dan memperluas web sistem
untuk menambahkan fungsional bisnis.
2.1.9 Interaksi Manusia dan Komputer
Menurut Sneiderman (2010, p32), ada lima faktor manusia terukur
yang dapat dijadikan sebagai pusat evaluasi, yaitu :
1.
Waktu belajar Waktu yang dibutuhkan oleh user untuk mempelajari
cara relevan dalam mengerjakan tugas dengan lancar.
2.
Kecepatan kinerja Waktu yang diperlukan untuk mengerjakan suatu
tugas yang diberikan.
3.
Tingkat kesalahan Berapa banyak kesalahan yang dilakukan oleh
userdan kesalahan- kesalahan seperti apa yang bisa terjadi saat user
mengerjakan tugas tersebut.
4.
Daya ingat Kemampuan user mempertahankan pengetahuannya
setelah jangka waktu tertentu.
5.
Kepuasan subjektif Kepuasan user terhadap berbagai aspek dari
sistem.
Menurut Shneiderman (2010, p88), terdapat delapan aturan emas
dalam desain antarmuka yaitu:
1.
Berusaha untuk konsisten
Aturan ini merupakan aturan yang paling sering dilanggar, karena
terdapat banyak bentuk konsistensi. Konsisten dalam hal urutan aksi,
istilah yang digunakan, menu, layout, penggunaan warna, tata letak,
kapitalisasi, font, dan sebagainya.
2.
Menyediakan kebutuhan universal
Dengan memahami kebutuhan user yang bermacam-macam dan
membuat desain fleksibel yang mendukung perubahan dalam konten.
3.
Memberikan umpan balik yang informatif
Untuk setiap aksi user, harus ada sistem umpan balik. Untuk aksi kecil
yang sering dilakukan, respon dapat dibuat dengan sederhana.
28
Sedangkan untuk aksi yang besar dan jarang dilakukan, respon harus
dibuat lebih tegas dan jelas.
4.
Desain dialog untuk menghasilkan penutupan atau keadaan akhir
Urutan aksi hendaknya disusun ke dalam kelompok kategori awal,
tengah, dan akhir. Umpan balik yang informatif dapat memberikan
kepuasan pencapaian, rasa lega, sinyal untuk mempersiapkan diri
memasuki kelompok kategori aksi selanjutnya.
5.
Penawaran pencegahan dan penanganan kesalahan sederhana
Usahakan dalam mendesain suatu sistem, diarahkan agar user tidak
membuat kesalahan yang serius. Misalnya menyediakan pilihan menu,
tidak mengizinkan karakter alfabet pada kotak entri numerik. Jika user
melakukan kesalahan, sistem harus dapat mendeteksi kesalahan dan
menawarkan instruksi yang sederhana, konstruktif, dan spesifik untuk
perbaikan. Contoh, user tidak perlu mengetik ulang seluruh perintah,
melainkan hanya memperbaiki bagian yang salah saja.
6.
Mengizinkan pembalikan aksi yang mudah
Pada suatu sistem aplikasi harus terdapat pembalikan aksi. Fitur ini
dapat memperkecil kesalahan, selama user tahu bahwa aksi dapat
dibatalkan. Pembalikan aksi dapat berupa tindakan tunggal, tugas data
entry, atau serangkaian aksi seperti entri nama dan alamat.
7.
Mendukung pusat kendali internal
User yang sudah terbiasa dengan suatu aplikasi, biasanya ingin
memiliki kendali atas antarmuka dan tanggapan dari aksinya. Aksi
antarmuka yang tidak umum, urutan entri data yang membosankan,
kesulitan dalam memperoleh informasi yang dibutuhkan, serta
ketidakmampuan
menghasilkan
aksi
yang
diinginkan
dapat
menimbulkan keresahan dan ketidakpuasan pada user.
8.
Mengurangi beban ingatan jangka pendek
Manusia mempunyai keterbatasan dalam memproses informasi
dengan waktu yang singkat. Oleh karena itu diperlukan tampilan yang
sederhana, pengurangan jendela-gerak frekuensi, pemberian waktu
pelatihan yang cukup untuk kode-kode, hafalan dan rangkaian aksi.
Jika diperlukan, akses online untuk sintaks, singkatan, kode, dan
informasi yang terkait harus disediakan.
29
2.2 Teori Khusus
2.2.1 Rational Unified Process (RUP)
Menurut IBM (2012), Rational Unified Process (RUP) adalah
kerangka proses yang menyediakan simulasi sistem pada industri untuk
sistem, software, implementasi, dan manajemen proyek yang efektif. RUP
adalah salah satu dari sekian banyak proses yang terdapat di dalam Rational
Process Library, yang memberikan simulasi terbaik untuk pengembangan
atau kebutuhan proyek. RUP mempunyai beberapa tahapan, yaitu :
Gambar 2. 9 Metode RUP(Rasional Unified Process)
(Sumber: http://www.ibm.com/developerworks/rational/
library/feb05/krebs/krebsfig1.gif)
1.
Inception
Inception merupakan tahap untuk mengidentifikasi sistem yang akan
dikembangkan. Aktivitas yang dilakukan pada tahap ini antara lain mencakup
analisis sistem existing, perumusan sistem target, penentuan arsitektur global
30
target,
identifikasi
kebutuhan,
perumusan
persyaratan
(fungsional,
performansi, keamanan, GUI, dll), perumusan kebutuhan pengujian (level
unit, integrasi, sistem, performansi, fungsionalitas, keamanan, dll), UML
diagram, dan pembuatan dokumentasi.
2.
Elaboration
Elaboration merupakan tahap untuk melakukan desain secara lengkap
berdasarkan hasil analisis pada tahap inception. Aktivitas yang dilakukan
pada tahap ini antara lain mencakup pembuatan desain arsitektur subsistem
(architecture pattern), desain komponen sistem, desain format data (protokol
komunikasi), desain database, desain user interface, pemodelan diagram
UML (diagram sequence, class, component, deployment, dll.), dan pembuatan
dokumentasi
3. Construction
Construction merupakan tahap untuk mengimplementasikan hasil
desain dan melakukan pengujian hasil implementasi. Pada tahap awal
construction, ada baiknya dilakukan pemeriksaan ulang hasil analisis dan
desain, terutama desain pada sequence diagram, class diagram, component
dan deployment. Apabila desain yang dibuat telah sesuai dengan analisis
sistem, maka implementasi dengan bahasa pemrogramanan tertentu dapat
dilakukan. Aktivitas yang dilakukan pada tahap ini antara lain mencakup
pengujian hasil analisis dan desain, pendataan kebutuhan implementasi
lengkap (berpedoman pada identifikasi kebutuhan di tahap analisis),
penentuan coding pattern yang digunakan, pembuatan program, pengujian,
optimasi program, pendataan berbagai kemungkinan pengembangan atau
perbaikan lebih lanjut, dan pembuatan dokumentasi.
4. Transition
Transition merupakan tahap untuk menyerahkan sistem aplikasi
kepada user (roll-out), yang umumnya mencakup pelatihan dan beta testing
aplikasi.
RUP juga mempunyai aliran kerja yang terbagi menjadi dua bagian, yaitu:
31
1. Aliran Kerja Utama
a. Business Modeling
Pada tahap ini, terdapat identifikasi dan deskripsi langsung dari area dan
permasalahan untuk redesign atau reengineering, beserta struktur dan proses–
proses bisnis organisasi.
b.
Requirements
Tujuan utama pada fase ini adalah menyusun sistem apa yang
seharusnya ada dan mengapa perlu dibuat, mendefinisikan batas dari sistem,
melihat
kemungkinan
ancaman
keamanan
serta
bagaimana
cara
penanggulangannya, dan mengestimasi biaya dan skala waktu yang rumit. Isi
dari sistem dibangun yang kemudian diterjemahkan kedalam use case model
dengan tambahan spesifikasi kebutuhan. Baik kebutuhan fungsional dan
nonfungsional akan dikumpulkan dan dianalisis. Kebutuhan user dan
stakeholder serta fitur high-level didefinisikan dan kemudian diubah menjadi
specific software requirements.
32
Gambar 2. 10 Alur kerja Requirements dalam Rational Unified Process
(Sumber: PT.MULTIPOLAR TECHNOLOGY.TBK)
c.
Analysis and Design
Pada fase ini, semua requirement pada tahap kedua akan diubah
menjadi spesifikasi implementasi.
d.
Implementation
Pada tahap ini, semua analisa dan desain yang telah dibuat pada fase
sebelumnya akan diimplementasikan dan diterjemahkan menjadi kode
program.
e.
Testing
Pada
memverifikasi
tahap
ini,
semua
pengembang
interaksi
software
komponen,
akan
kebutuhan
menguji
dan
yang
telah
diimplementasikan dan kualitas dari software yang telah dikembangkan.
33
f.
Deployment
Pada tahap ini, pengembang software menyebarkan software yang
telah selesai kepada user. Pengembang software juga menyediakan
dokumentasi untuk semua fitur dan fungsi. Pada tahap ini juga, pengembang
software mendapatkan umpan balik dan masukan terhadap software yang
berujung pada modifikasi fungsi dan fitur agar menjadi lebih baik.
2. Aliran Kerja Pendukung
a.
Configuration and Change Management
Tahap ini menjalankan dan merawat integritas dari proyek.
Kegiatannya meliputi monitoring dan mengatur perubahan permintaan,
perubahan biaya, dan tetap mengontrol berbagai versi produk. Tahap ini juga
meliputi manajemen konfigurasi hardware dan software.
b.
Project Management
Tahap ini menyediakan framework untuk mengatur software dan
resiko. Tahap ini juga menyediakan pedoman untuk planning, staffing,
monitoring dan secara umum menunjukan manajemen proyek.
c.
Enviroment
Tahap ini menjelaskan tentang infrastruktur dan metode yang
dibutuhkan untuk mengembangkan sistem.
2.2.2 PHP
Menurut Connolly dan Begg (2010, p1043) PHP merupakan salah
satu bahasa script dengan sumber terbuka yang cukup populer dan di sertai
dukungan dari banyak web server lainnya, termasuk dukungan dari Apache
HTTP Server dan Internet Information Server Microsoft. Pengembangan dari
PHP itu sendiri juga dipengaruhi oleh sejumlah bahasa lain seperti Perl, C,
dan Java maupun juga untuk sebagian halaman extend dari server yang aktif.
34
Beberapa keunggulan dari bahasa PHP dibandingkan dengan bahasa
scripting lainnya adalah dari cara penulisan halaman yang dihasilkan secara
dinamis dan lebih cepat, lebih mudah dipelajari dan lebih mudah digunakan.
PHP memiliki library untuk berbagai web yang termasuk umum, beberapa
modul ekstensi telah ada dan disediakan untuk mendukung hal-hal tersebut
seperti konektivitas database, mail, dan juga XML.
2.2.3 mySQL
Menurut Miftakhul Huda dan BunafitKomputer (2010, p181),
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL
atau yang dikenal dengan DBMS (Database Management System), database
ini multithread, multi-user.
Download