BAB 2
LANDASAN TEORI
2.1
Teori-teori Dasar 2.1.1
Sistem Sistem dapat didefinisikan secara sederhana sebagai sekelompok elemen
yang saling berhubungan atau berinteraksi hingga membentuk satu kesatuan (O’Brien , 2006, pp29-32). Akan tetapi, konsep umum sistem berikut ini memberikan konsep dasar yang lebih tepat untuk bidang sistem informasi : sistem adalah
sekelompok komponen yang saling berhubungan, bekerja
bersama untuk mencapai tujuan bersama dengan menerima input serta menghasilkan output dalam proses transformasi yang teratur. Sistem semacam ini memiliki tiga komponen atau fungsi dasar yang berinteraksi : - Input melibatkan penangkapan dan perakitan berbagai elemen yang memasuki sistem untuk diproses. Contohnya, bahan baku mentah, energi, data, dan usaha manusia harus terjamin dan diatur untuk pemrosesan. - Pemrosesan melibatkan proses transformasi yang mengubah input menjadi output. Contohnya adalah proses manufaktur, proses bernafasnya manusia, atau perhitungan matematika.
5
6 - Output melibatkan perpindahan elemen yang telah diproduksi oleh proses transformasi ke tujuan akhirnya. Contohnya, barang jadi, layanan oleh manusia, dan informasi manajemen harus dipindahkan ke para pemakainya.
2.1.2
Pengendalian Produksi Pengendalian produksi adalah mekanisme untuk memantau eksekusi
rencana. Hal tersebut memiliki beberapa fungsi penting : 1. Memastikan bahwa operasi produksi dimulai pada tempat yang direncanakan dan pada waktu yang direncanakan. 2. Mengamati perkembangan operasi dan mencatatnya dengan tepat. 3. Menganalisis
data
yang
telah
dicatat
dengan
rencana
mengukur
penyimpangannya. 4. Mengambil tindakan korektif secepatnya untuk meminimalisir dampak negatif dari penyimpangan rencana. 5. Memberikan umpan balik untuk informasi yang telah tercatat kepada bagian perencanaan guna memperbaiki rencana di masa yang akan datang.
Beberapa bentuk pengendalian produksi yaitu : 1. Pengendalian kualitas (Quality Control) 2. Pengendalian persediaan (Stock Control) 3. Pemrosesan permintaan atau pemenuhan jadwal produksi 4. Pengendalian biaya 5. Produktivitas karyawan dan buruh
7 (Anonim1)
2.1.3
Internet Internet adalah sebuah jaringan komputer yang terdiri dari berbagai
macam ukuran jaringan komputer di seluruh dunia mulai dari sebuah PC, jaringan-jaringan lokal berskala kecil, jaringan-jaringan kelas menengah, hingga jaringan-jaringan utama yang menjadi tulang punggung internet seperti NSFnet, NEARnet, SURAnet, dan lain-lain. Jaringan-jaringan ini saling berhubungan atau berkomunikasi satu sama lain dengan berbasiskan protokol IP (Internet Protocol, RFC 793) pada network layer-nya (layer ke 3 dari 7 layer OSI model) dan TCP (Transmission Control Protocol, RFC 791) atau UDP (User Datagram Protocol, RFC 768) pada transport layer-nya (layer ke 4), sehingga setiap pemakai dari setiap jaringan dapat saling mengakses semua layanan yang disediakan oleh jaringan lainnya. Sedangkan bila ditinjau dari segi penulisannya, terdapat dua arti internet, yakni: 1. Internet Jaringan internet (huruf “i” kecil sebagai huruf awal) adalah suatu jaringan komputer yang mana komputer-komputer terhubung dapat berkomunikasi walaupun perangkat keras dan perangkat lunaknya berlainan satu dengan lainnya (sering kali disebut internet working). 2. Internet Jaringan Internet (huruf “I” besar sebagai huruf awal) adalah jaringan dari sekumpulan jaringan (networks of networks) yang terdiri dari jutaan
8 komputer yang dapat berkomunikasi satu sama lain dengan menggunakan suatu aturan komunikasi jaringan komputer (protokol) yang sama. Protokol yang digunakan tersebut adalah Transmission Control Protocol/Internet Protocol (TCP/IP). (Anonim2)
2.1.4
HTTP (Hypertext Transfer Protocol) HTTP adalah metode standar untuk publikasi informasi dalam format
HTML di internet. URL untuk sebuat website biasanya dimulai dengan http :. Sebagai family dari pada protokol TCP/IP yang merupakan dasar bagi pertukaran informasi di internet, HTTP merupakan protokol aplikasi. Konsep utama yang dimiliki oleh HTTP adalah ide bahwa suatu file dapat mengandung referensi ke file yang lain (yang dapat menyebabkan permintaan informasi bertambah) (Downing et al , 2009, p239).
2.1.5
WWW (World Wide Web) WWW adalah kumpulan situs komputer yang terorganisasi secara bebas
yang mempublikasi informasi yang dapat dibaca oleh siapa saja melalui internet, sebagian besar menggunakan HTTP (Downing et al , 2009, p536). Setiap halaman informasi termasuk pilihan menu dan kata-kata yang disorot dimana pengguna dapat mencari informasi lebih jauh, baik dari komputer yang sama atau menghubungkan secara otomatis ke komputer lain. Jadi, informasi diatur dalam sebuah web yang mempunyai ukuran yang sangat besar, dan hubungannya diatur oleh pembuatnya pada setiap halaman.
9 2.1.6
HTML (Hypertext Markup Language) HTML adalah sekumpulan kode yang dapat dimasukkan ke dalam text
files untuk mengindikasikan special typeface, gambar yang dimasukkan, dan hubungan ke dokumen hypertext lain (Downing et al , 2009, p237). Menyediakan sarana untuk membuat dokumen terstruktur oleh semantik struktural untuk menunjukkan teks seperti judul, paragraf, daftar, serta untuk link, kutipan, dan item lainnya. Hal ini memungkinkan gambar dan benda untuk dimasukkan dan dapat digunakan untuk membuat bentuk-bentuk interaktif. Hal ini ditulis dalam bentuk elemen HTML terdiri dari "tag" dikelilingi oleh sudut kurung di dalam konten halaman web. Hal ini dapat dimasukkan atau dapat ditampilkan dalam bahasa script seperti JavaScript yang mempengaruhi perilaku dari HTML processor seperti Web browser dan Cascading Style Sheets (CSS) untuk menentukan tampilan dan tata letak teks dan materi lain. W3C (World Wide Web Consortium), pengurus HTML dan CSS standar, mendorong penggunaan CSS lebih eksplisit. (Anonim3)
2.1.7
Database Database adalah koleksi
data item yang berinterrelasi yang diatur
sebagai single unit (Oppel, 2009, p4). Database object adalah struktur data yang diberikan nama lalu disimpan dalam database. File adalah koleksi record yang saling berhubungan yang disimpan sebagai unit tunggal oleh sistem operasi. Relational database adalah sebuah kumpulan dari relasi yang telah dinormalisasi dengan nama relasi yang jelas (Connolly dan Begg, 2002, p74).
10 Relational database merupakan suatu tipe database yang berdasarkan model relational, dimana semua data dapat dilihat oleh user, disusun dalam bentuk tabel-tabel dan semua operasi pada database berkerja pada tabel-tabel tersebut. Relasi antar-tabel pada relational database sudah melalui tahap normalisasi dengan nama relasi yang berbeda-beda. Ada 3 jenis relasi antar-records dalam tabel (Connolly dan Begg, 2002, p344) yaitu: 1. Relasi one-to-one adalah relasi antara satu record dengan satu record dalam tabel lain yang saling berhubungan. 2. Relasi one-to-many adalah relasi antara satu record dengan lebih dari satu record dalam tabel lain sehingga saling berhubungan. 3. Relasi many-to-many adalah relasi antara banyak record dengan lebih dari satu record dalam tabel lain yang saling berhubungan.
2.1.7.1
Database Management System (DBMS) DBMS (Database Management System) adalah sebuah sistem software
sistem yang memungkinkan user untuk mendefinisikan, membuat, memelihara, dan mengatur akses ke dalam database (Connolly dan Begg, 2002, p16). DBMS merupakan sebuah software yang berinteraksi dengan user program aplikasi dan database. DBMS adalah sistem pengorganisasian dan pengolahan database pada komputer. Sistem ini dirancang untuk mampu melakukan berbagai data dengan beberapa referensi data yang sama. DBMS ini mampu diakses oleh berbagai aplikasi.
11 Terobosan dari DBMS adalah Relational Database Management System (RDBMS) yang mengorganisasikan data dalam suatu struktur dan memaksimalkan berbagai cara serta menghubungkan antar kumpulan data yang disimpan dalam database. Terobosan
berikutnya
adalah Distributed
Relational
Database
Management System (DRDBMS). Dengan DRDBMS memungkinkan informasi berada pada baris data di lokasi yang berbeda (didistribusikan), dan direferensisilangkan, diperbaharui, dan akses dari semua lokasi, seolah-olah data tersebut berbasis data tunggal dan terpusat. Sebuah DBMS biasanya memberikan fasilitas-fasilitas sebagai berikut : 1. Terdapat fasilitas yang memungkinkan user untuk mendefinisikan basis data, biasanya
melalui
sebuah
Data
Definition
Language
(DDL),
DDL
memungkinkan user untuk menspesifikasikan tipe data dan struktur data dan batasan dari data yang akan disimpan ke dalam basis data. 2. Terdapat fasilitas yang memungkinkan user untuk melakukan insert, update, delete, dan mengambil data dari basis data, biasanya melalui sebuah Data Manipulation Language (DML). Biasanya terdapat fasilitas untuk melayani pengaksesan data yang dinamakan query language. Bahasa query yang paling diakui adalah Structured Query Language (SQL), yang merupakan standar bahasa formal dan de facto bagi DBMS relasional.
12 2.1.8
UML (Unified Modelling Language) UML adalah sebuah bahasa yang telah menjadi standar dalam industri
untuk visualisasi, spesifikasi, merancang, dan mendokumentasi sistem piranti lunak (Booch et al, 1999, p14). UML menawarkan sebuah standar untuk merancang model sebuah sistem. Seperti bahasa lainnya, UML juga memiliki notasi.
Notasi
UML
merupakan
sekumpulan
bentuk
khusus
untuk
menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu dan UML menjelaskan bagaimana bentuk-bentuk tersebut didefinisikan. Membangun model untuk suatu sistem piranti lunak sangat bergantung pada konstruksinya atau kemudahan dalam memperbaikinya. Model yang bagus sangat penting untuk menghasilkan komunikasi yang baik antar anggota tim dan untuk meyakinkan sempurnanya arsitektur sistem yang dibangun. Jika ingin membangun suatu model dari suatu sistem yang kompleks, tidak mungkin user dapat memahaminya secara keseluruhan. Dengan meningkatnya kompleksitas sistem, visualisasi dan pemodelan menjadi sangat penting. UML dibuat untuk merespon kebutuhan tersebut. Melihat dari faktor sejarah dan pendorong terbentuknya UML ini, dapat ditarik suatu kesimpulan mengenai tujuan dibentuknya UML, yaitu sebagai berikut : 1. Memberikan gambaran model konseptual piranti lunak dari suatu bahasa pemrograman yang tekstual sehingga dapat dimengerti oleh orang-orang yang non-programmer.
13 2. Membangun model yang tepat, tidak ambigu, dan lengkap yang dapat membantu dalam tahap-tahap dari analisis, perancangan, dan implementasi. 3. Dapat memodelkan beberapa jenis bahasa pemrograman, dan membantu memetakan kembali model tersebut ke suatu bahasa pemrograman yang lain. 4. Membantu dalam dokumentasi perancangan piranti lunak.
UML mendefinisikan beberapa diagram antara lain sebagai berikut : •
Use case diagram
•
Class diagram
•
Activity diagram
•
Sequence diagram
2.1.8.1
Usecase Diagram
Use case diagram menggambarkan sekumpulan use case dan aktor serta hubungannya (Booch et al, 1999, p234). Yang ditekankan adalah ”apa” yang dilakukan terhadap sistem dan bukan ”bagaimana”. Sebuah use case menggambarkan interaksi antara aktor dengan sistem.
14
Contoh use case diagram :
Gambar 2.1 Use Case Diagram (Anonim 4)
Tabel 2.1 Relasi Pada Use Case Diagram (Booch, 1999) Simbol
Penjelasan Actor Menspesifikasikan seperangkat peranan yang user sistem dapat perankan ketika berinteraksi dengan use case.
15 Association menggambarkan interaksi antara aktor dan use case Generalization relasi antar use case, dimana salah satunya dalam bentuk yang lebih umum dari yang lain Use Case Sebuah deskripsi dari seperangkat aksi-aksi yang berurutan yang ditampilkan sebuah sistem .
System
System Tempat seluruh aktivitas-aktivitas sistem yang sedang berjalan.
Dependency Untuk menggambarkan ketergantungan sebuah use case dengan use case lainnya. Include menggambarkan bahwa keseluruhan dari sebuah use case merupakan fungsionalitas use case lainnya. Extend menggambarkan hubungan antar use case dimana bahwa sebuah use case merupakan fungsionalitas use case lainnya, apabila kondisi tertentu dipenuhi.
16 2.1.8.2
Class Diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut atau properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda atau fungsi). Class memiliki tiga area pokok : 1. Nama (dan stereotype) 2. Atribut 3. Metoda Atribut dan metoda dapat memiliki salah satu sifat berikut : •
Private, tidak dapat dipanggil dari luar class yang bersangkutan.
•
Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anakanak yang mewarisinya.
•
Public, dapat dipanggil oleh siapa saja.
Gambar 2.2 Spesifikasi class lengkap dengan tiga kompartemen (Pender, 2002)
17 Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian, interface mendukung resolusi metoda pada saat run-time.
Gambar 2.3 Class dengan Interface
Class diagram menggambarkan kumpulan class, interface, dan hubungan antar class atau interface tersebut. Class diagram menggambarkan suatu gambaran desain statis dari suatu sistem (Booch et al, 1999, p107).
18 Contoh Class Diagram :
Gambar 2.4 Class Diagram (Miller, 2008)
Tabel 2.2 Relasi Pada Class Diagram (Booch, 1999) Simbol
Penjelasan Class Sebuah deskripsi dari seperangkat objek yang berbagi atribut, operasi, dan relasi yang sama. Class terbagi atas 3 bagian, yaitu nama class pada bagian atas, atribut class pada bagian tengah, dan operasi pada bagian bawah. Association Merupakan hubungan struktural antar class yang saling berelasi.
19 Aggregation Merupakan bentuk spesial dari hubungan asosiasi yang menspesifikasikan semua hubungan antara kumpulan (the whole) dan sebuah bagian (the part). Agregasi digambarkan dengan wajik tidak terisi. 1
0..1
Multiplicity
0..1
1
Menggambarkan jumlah objek yang berpartisipasi
1..*
1
dalam hubungan antar class.
Generalization Merupakan sebuah relasi spesialisasi / generalisasi dimana suatu class dapat lebih general atau lebih spesifik dari class lainnya.
2.1.8.3
Activity Diagram
Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, dimana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity
20 diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar sub sistem) secara eksak, tetapi lebih menggambarkan prosesproses dan jalur-jalur aktivitas dari level atas secara umum. Activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu.
21 Contoh Activity Diagram :
Gambar 2.5 Activity Diagram (Miller, 2008)
22 Tabel 2.3 Relasi Pada Activity Diagram (Booch, 1999) Simbol
Nama Simbol
Penjelasan
Initial State
Merepresentasikan dimulainya alur kerja suatu sistem dalam activity diagram.
Action State
Sebuah
state
yang
menggambarkan eksekusi dari aksi atomic. Transition
Mengindikasikan bahwa suatu
between activities
objek dari state pertama akan menampilkan aksi-aksi tertentu dan memasuki state kedua ketika peristiwa tertentu terjadi dan kondisi telah terpenuhi.
Decision points
Menentukan kapan alur dalam aktivitas menjadi bercabang
Synchronization bars
Menspesifikasikan dua atau lebih aktivitas yang dapat dilakukan secara paralel.
23 Merepresentasikan
Final State
diakhirinya alur kerja suatu sistem dalam activity diagram
2.1.8.4
Sequence Diagram
Sequence
diagram
menggambarkan
sekumpulan
objek
dan
interaksinya, termasuk message yang dikirim terhadap urutan waktu (Booch et
al,
1999,
p245).
Sequence
diagram
biasa
digunakan
untuk
menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai tanggapan dari sebuah event untuk menghasilkan keluaran tertentu. Diawali dari apa yang memicu akivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan keluaran yang dihasilkan. Masingmasing objek memiliki lifeline vertikal sedangkan message digambarkan secara horizontal.
24
Contoh sequence diagram :
Gambar 2.6 Sequence Diagram (Miller, 2008)
Tabel 2.4 Relasi Pada Sequence Diagram (Booch, 1999) Simbol
Penjelasan Object Lifeline
Object1
Merupakan
sebuah
garis
yang
merepresentasikan adanya sebuah objek dalam jangka waktu tertentu.
25 Message1
Message, return, callback message
Message2
Penyampaian pesan dari satu objek ke objek lain atau ke diri sendiri. Message3
Activation Menggambarkan
periode
waktu
ketika pemrosesan terjadi dalam objek tersebut.
2.1.9
Diagram Aliran Dokumen Menurut Mulyadi (2001, pp58-63), diagram aliran dokumen adalah suatu
model yang menggambarkan aliran dokumen dan proses untuk mengolah dokumen dalam suatu proses. Berikut ini adalah tabel yang menjelaskan komponen-komponen dari diagram aliran dokumen :
Tabel 2.5 Hubungan pada diagram aliran dokumen Simbol
Keterangan Dokumen Simbol
ini
digunakan
untuk
menggambarkan semua jenis dokumen yang merupakan formulir untuk merekam
26 data terjadinya suatu transaksi. Proses Simbol ini digunakan untuk menunjukkan tempat-tempat dalam sistem informasi yang mengolah atau mengubah data yang diterima menjadi data yang mengalir keluar. Nama pengolahan data ditulis didalam simbol. Mulai/Akhir (Terminal) Simbol
ini
digunakan
untuk
menggambarkan awal dan akhir suatu sistem atau proses. Garis Alir Simbol
ini
digunakan
untuk
menggambarkan arah proses terjadinya suatu transasksi.
2.1.10 Rekayasa Piranti Lunak (Software Engineering) Berdasarkan pendapat Pressman (2001, pp20-21), rekayasa piranti lunak adalah
penerapan
sistematis,
disiplin,
pendekatan
kuantitatif
untuk
pengembangan, operasi, dan pemeliharaan perangkat lunak yaitu, penerapan
27 rekayasa piranti lunak. Rekayasa piranti lunak adalah sebuah teknologi yang berlapis.Semua pendekatan rekayasa (termasuk rekayasa piranti lunak) harus bersandar pada komitmen organisasional untuk kualitas. Manajemen kualitas total (Total Quality Management).dan filosofi serupa menumbuhkan budaya perbaikan secara berkelanjutan dan budaya ini pada akhirnya mengarah pada pengembangan dari bertambahnya pendekatan yang lebih dewasa untuk rekayasa piranti lunak. Fondasi yang mendukung rekayasa perangkat lunak adalah fokus kualitas (Quality Focus).
Gambar 2.3 Lapisan Rekayasa Piranti Lunak (Pressman, 2001)
Fondasi untuk rekayasa piranti lunak adalah lapisan proses. Proses rekayasa piranti lunak adalah perekat menjaga lapisan teknologi bersama dan memungkinkan pengembangan piranti lunak yang rasional dan tepat waktu. Proses menentukan sebuah kerangka kerja untuk sebuah kunci area proses (the key area process). Kunci area proses membentuk basis untuk pengendalian manajemen proyek piranti lunak dan menetapkan konteks dimana metode teknis diterapkan, produk kerja (model-model, dokumen, data, laporan, bentuk,dll).
28 2.1.10.1
Linear Sequential Model
Menurut
Pressman
(2001,
pp28-29)
Linear
sequential
model
menngusulkan sistematika pendekatan secara berurutan untuk pengembangan piranti lunak yang dimulai pada tingkat sistem dan kemajuan melalui analisis, perancangan, coding, pengujian, dan dukungan.
Gambar 2.4 The Linear Sequential Model (Pressman, 2001)
Aktivitas dalam linear sequential model meliputi : a. Rekayasa sistem/informasi dan pemodelan Karena piranti lunak adalah bagian dari sebuah sistem besar atau bisnis, pekerjaan dimulai dari menentukan kebutuhan untuk semua elemen sistem, kemudian mengalokasikan beberapa bagian dari kebutuhan ini untuk piranti lunak. Tinjauan sistem ini sangat penting ketika piranti harus berinteraksi dengan elemen lain seperti piranti keras, manusia, dan database. Rekayasa system dan analisis meliputi pengumpulan kebutuhan pada tingkat sistem
29 dengan jumlah yang kecil pada puncak perancagan dan analisis. Rekayasa informasi meliputi pengumpulan kebutuhan pada tingkat bisinis strategis dan pada tingkat wilayah bisnis.
b. Analisis kebutuhan piranti lunak Proses pengumpulan kebutuhan ditingkatkan dan difokuskan secara khusus pada piranti lunak. Untuk memahami dasar dari program yang akan dibuat, sistem analis harus memahami domain informasi untuk piranti lunak tersebut seperti, fungsi yang diperlukan, perilaku, kinerja, dan tampilan antarmuka.
Kebutuhan
untuk
kedua
sistem
dan
piranti
lunak
didokumentasikan dan dinilai bersama dengan pelanggan.
c. Perancangan Perancangan piranti lunak pada hakikatnya adalah sebuah proses gabungan yang berfokus pada empat sifat program yang berbeda : struktur data, arsitektur piranti lunak, gambaran antarmuka, dan perincian prosedural (algoritmik). Proses perancangan menerjemahkan kebutuhan ke dalam gambaran piranti lunak yang dapat dinilai kualitasnya sebelum penulisan kode (coding) dimulai. Seperti kebutuhan, perancangan didokumentasikan dan menjadi bagian dari konfigurasi piranti lunak.
30 d. Code generation Perancangan harus diterjemahkan ke dalam bentuk yang dapat dibaca oleh mesin. Langkah code generation menjalankan tugas ini. Jika perancangan dikerjakan dalam cara yang rinci, code generation dapat diselesaikan secara mekanis. e. Ujicoba (Testing) Sekali kode telah dihasilkan, ujicoba program dimulai. Proses ujicoba berfokus pada logis internal dari piranti lunak, memastikan bahwa semua pernyataan telah dicoba, dan pada fungsi eksternal yaitu, melakukan ujicoba untuk menemukan kesalahan dan memastikan bahwa input yang didefinisikan akan menghasilkan nilai yang benar yang sesuai dengan nilai yang diinginkan. f. Dukungan Piranti lunak tidak diragukan lagi akan mengalami perubahan sesudah diberikan ke pelanggan (kemungkinan pengecualian ada pada embedded software). Perubahan akan terjadi karena kesalahan yang ditemukan, karena piranti lunak harus diadaptasikan untuk mengakomodasi perubahan pada lingkungan eksternal (contoh : perubahan yang dibutuhkan akibat system operasi yang baru atau perangkat periferal), atau karena pelanggan memerlukan fungsional atau peningkatan kinerja. Dukungan piranti lunak atau pemeliharaan mengerjakan kembali setiap tahap terdahulu pada program yang telah ada daripada membuat lagi suatu piranti lunak baru.
31 2.2
Teori-teori Khusus 2.2.1
PHP PHP adalah penggalan kode-kode yang digunakan untuk keperluan
umum. Bahasa kode PHP biasanya cocok untuk digunakan untuk pengembangan Web dan dapat dimasukkan ke dalam HTML.
Kelebihan PHP dari bahasa pemrograman lain • Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan
sebuah kompilasi dalam penggunaanya. • Web Server yang mendukung PHP dapat ditemukan dimana - mana dari mulai
apache, IIS, Lighttpd, hingga Xitami dengan konfigurasi yang relatif mudah. • Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan
developer yang siap membantu dalam pengembangan. • Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah
karena memiliki referensi yang banyak. • PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (Linux,
Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah system.
2.2.2 MYSQL MySQL (Weiling dan Thomson, 2001, p2) adalah Relational Database Management System (RDBMS) yang sangat cepat dan kuat.
32 Setiap pengguna basis data memerlukan bahasa pemrograman yang dapat dipakai sesuai dengan fungsi dan tugasnya. Dalam basis data secara umum dikenal dua bahasa, yaitu: a. Data Definition Language (DDL) : bahasa yang dipakai untuk menjelaskan objek dari basis data. DDL dipakai untuk mendefinisikan kerangka basis data (berorientasi pada tipe pada objek basis data). b. Data Manipulation Language (DML) : bahasa yang dipakai untuk memanipulasi objek data dari basis data. DML dipakai untuk operasi terhadap isi basis data.
Keunggulan MySQL •
MySQL merupakan program yang multi-threaded, sehingga dapat dipasang pada server yang memiliki multi-CPU.
•
Didukung program-program umum seperti C, C++, Java, Perl, PHP, Python, TCL APIs dan lain sebagainya.
•
Bekerja pada berbagai platform (tersedia berbagai versi untuk berbagai sistem operasi).
•
Memiliki jenis kolom yang cukup banyak sehingga memudahkan konfigurasi sistem database.
•
Memiliki sistem sekuriti yang cukup baik dengan verifikasi host.
•
Mendukung ODBC untuk sistem operasi Microsoft Windows.
•
Mendukung record yang memiliki kolom dengan panjang tetap atau panjang bervariasi.
33 2.2.3
IMK (Interaksi Manusia dan Komputer) Menurut Shneiderman (1998, p74-75) IMK adalah studi tentang interaksi
antara manusia dan komputer. IMK sering dianggap sebagai titik temu antara sains komputer, sains perilaku, dan perancangan serta beberapa studi ilmu lainnya. Interaksi antara manusia dan computer terjadi pada user interface yang termasuk perangkat lunak dan perangkat keras. 8 Aturan emas dalam perancangan interface yaitu : a. Konsistensi Konsistensi dilakukan pada urutan tindakan, perintah, dan istilah yang digunakan pada prompt, menu, serta layar bantuan. b. Memungkinkan pengguna untuk menggunakan shortcut Ada kebutuhan dari pengguna yang sudah ahli untuk meningkatkan kecepatan interaksi, sehingga diperlukan singkatan, tombol fungsi, perintah tersembunyi, dan fasilitas makro. c. Memberikan umpan balik yang informatif Untuk setiap tindakan operator, sebaiknya disertakan suatu sistem umpan balik. Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan umpan balik yang sederhana. Tetapi ketika tindakan merupakan hal yang penting, maka umpan balik sebaiknya lebih substansial. Misalnya muncul suatu suara ketika salah menekan tombol pada waktu input data atau muncul pesan kesalahannya. d. Merancang dialog untuk menghasilkan suatu penutupan Urutan tindakan sebaiknya diorganisir dalam suatu kelompok dengan bagian
34 awal, tengah, dan akhir. Umpan balik yang informatif akan memberikan indikasi bahwa cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan berikutnya. e. Memberikan penanganan kesalahan yang sederhana Sedapat mungkin sistem dirancang sehingga pengguna tidak dapat melakukan kesalahan fatal. Jika kesalahan terjadi, sistem dapat mendeteksi kesalahan dengan cepat dan memberikan mekanisme yang sedehana dan mudah dipahami untuk penanganan kesalahan. f. Mudah kembali ke tindakan sebelumnya Hal ini dapat mengurangi kekuatiran pengguna karena pengguna mengetahui kesalahan yang dilakukan dapat dibatalkan; sehingga pengguna tidak takut untuk mengekplorasi pilihan-pilihan lain yang belum biasa digunakan. g. Mendukung tempat pengendali internal (internal locus of control) Pengguna ingin menjadi pengontrol sistem dan sistem akan merespon tindakan yang dilakukan pengguna daripada pengguna merasa bahwa sistem mengontrol pengguna. Sebaiknya sistem dirancang sedemikan rupa sehingga pengguna menjadi inisiator daripada responden. h. Mengurangi beban ingatan jangka pendek Keterbatasan ingatan manusia membutuhkan tampilan yang sederhana atau banyak tampilan halaman yang sebaiknya disatukan, serta diberikan cukup waktu pelatihan untuk kode, mnemonic, dan urutan tindakan.