7 BAB 2 LANDAS AN TEORI
2.1 Internet Internet (International Networking) adalah sebuah jaringan global dari interkoneksi jaringan-jaringan computer (Connolly, 2002, p944). Pada awalnya internet hanya digunakan oleh militer saja internet pertama kali di temukan pada tahun 1957 pesawat ulang – alik Sputnik diluncurkan sebagai stasiun luar angkasa pertama. Pada tahun 1968 internet mulai digunakan oleh beberapa universitas ternama di Amerika, dan pada tahun 1969 akhirnya jaringan internet dapat disambungkan melalui beberapa universitas dan lembaga, yaitu ;The University of California at Los Angeles, SRI (Stanford Research Institude), University of California at Santa Barbara, dan University of Utah. Jaringan dihubungkan dengan kabel berkecepatan 50 Kbps. Email pertama kali dibuat oleh Ray Tomlinson dari BBN. Tahun 1973 mulai menggunakan protocol TCP/IP yang didirikan oleh suatu grup yang di sebut DARPA.Tahun 1976 Dr. Robert M . M etcalfe menemukan Ethernet, dimana menggunakan kabel coaxial yang dapat mengirim data dengan cepat. Pada akhirnya penemuan ini yang akan mengilhami LAN. Pada tanggal 1 Januari 1981 semua mesin yang tersambung ke ARPARNET pecah menjadi 2, yaitu M ILNET dan ARPANET dimana M ILNET menangani kebutuhan militer dan ARPANET mendukung pengembangan IPTEK, Departement of Defence melanjutkan dukungan pada kedua jaringan. Tahun 1992 World Wide Web (WWW) dikeluarkan oleh CERN dan NSFNET ditingkatkan menjadi T3 (44,736 M bps). Tahun 1993 NFS menyediakan layanan internet dan pada tahun 1994 beberapa perusahaan menggunakan internet sebagai tempat usahanya, di antaranya ; Pizza Hut, First
8 Virtual (cyberbank pertama). Tahun 1995 NSF menjual domain dengan harga $50 per tahun diluar .edu dan .gov. Tahun 1996 lalu-lintas internet ditopang oleh ISPs termasuk M CI, AT&T, Sprint, UUnet, BBN planet, dan banyak lagi.
2.1.1 World Wide Web (WWW) World Wide Web (WWW) adalah suatu ruang informasi yang dipakai oleh pengenal global yang disebut URI (Uniform Resource Identifier) untuk mengidentifikasi sumber sumber daya yang berguna. M enurut Ellsworth (1997, p37), desain WorldWide Web yang baik adalah menyeimbangkan struktur dan hubungan menu dari menu atau homepage dengan halaman isi atau grafik dan dokumen yang di-link. Tujuannya untuk membangun hirerarki menu dan terstruktur dengan baik bagi pemakai, dan tidak menganggu pemakai situs web atau menyesatkan mereka.
2.1.2 Web Hosting Web hosting adalah layanan penyewaan ruang simpan data (space) yang digunakan untuk menyimpan data website agar halaman website tersebut dapat diakses dari mana saja. Data web tersebut meliputi file-file html, php script, cgi script, oss, image, database, dan file lain yang dibutuhkan untuk menampilkan halaman web. Selain menyimpan file-file tersebut di atas, biasanya web hosting juga memberikan fasilitas e-mail.
2.1.3 TCP/IP TCP/IP adalah protokol yang memungkinkan semua komputer untuk menggunakan data yang disalurkan melalui jaringan internet (Williams and Sawyer, 2005, p.51). TCP/IP dikembangkan pada tahun 1978 oleh U.S.Department of Defense’s Advanced Research
9 Projects Agency for Space and Computer Research. Protokol TCP/IP ini menentukan jenis pengecekan error built-in yang akan digunakan, metode pengkompresan data (jika ada), bagaimana perangkat pengirim akan mengetahui bahwa ia telah selesai mengirimkan data, dan bagaimana perangkat penerima akan mengetahui bahwa ia telah menerima pesan. TCP/IP memisahkan data menjadi paket-paket yang merupakan blok data terbesar yang dapat dikirimkan melalui internet (kurang dari 1500 karakter, atau 128 kilobyte). IP digunakan untuk mengirimkan paket-paket data melalui internet ke tujuan akhirnya. Sedangkan TCP digunakan untuk mengatur paket-paket data yang dikirimkan ke dalam urutan yang sebenarnya atau memastikan agar penerima menerima paket-paket data secara benar. Jika paket data yang diterima tidak benar, maka penerima akan mengirim pesan agar paket dikirim lagi. Penerima juga akan mengirimkan pesan bahwa paket telah diterima kepada pengirim apabila paket data yang diterima telah benar. Komputer-komputer dalam jaringan internet menggunakan TCP/IP untuk semua transaksi internet yang dilakukan.
2.2 Aplikasi Web Aplikasi web adalah suatu aplikasi yang dapat membentuk halaman – halaman web berdasarkan permintaan pemakai. Aplikasi web yang dapat mencangkup permintaan interraktif ataupun kelompok diskusi. Aplikasi web merupakan salah satu contoh aplikasi client/server. Client mewakili komputer yang digunakan oleh seorang pemakai yang hendak menggunakan aplikasi, sedangkan server mewakili komputer yang menyediakan layanan aplikasi. Dalam konteks ini, client dan server berhubungan melalui internet dan intranet. Yang menarik, model client/server yang menggunakan aplikasi web dapat melibatkan bermacam – macam platform.
10 Ciri khas
lain
pada penggunakan
aplikasi web,
pemakai menggunakan
perangkatlunak yang dinamakan web browser atau yang biasa disebut browser saja (misalnya Netscape communicatior, Interet Explorer, dan M ozilla) untuk mengakses aplikasi web. Komputer yang bertindak sebagai server umumnya menyediakan database server, selain web server yang ditujukan untuk melayani permintaan pemakai yang hendak mengaksesaplikasi web. Database server adalah server yang melayani akses terhadap database.Oracle dan M ySQL merupakan contoh dari sekian database server.Adapun contoh webserver yaitu Apache (sangat terkenal di lingkungan linux) dan IIS (Internet information Server), yang merupakan andalan M icrosoft.
2.2.1 HTML M enurut Turban (2003,p.10), Hyper Text Markup Language (HTM L) merupakan bahasa pemrograman standar yang digunakan untuk membuat dan mengenali dokumendokumen pada world wide web. Bermula dari sebuah bahasa yang sebelumnya banyak digunakan di dunia penerbitan dan percetakan yang disebut dengan SGM L (Standard Generalized Markup Language), HTM L adalah sebuah standar yang digunakan secara luas untuk menampilkan halaman web. HTM L saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C). HTM L berupa kode-kode tag yang menginstruksikan browser untuk menghasilkan tampilan sesuai dengan yang diinginkan. Sebuah file yang merupakan file HTM L dapat dibuka dengan menggunakan browser web seperti M ozilla Firefox atau M icrosoft Internet Explorer. HTM L juga dapat dikenali oleh aplikasi pembuka email ataupun dari PDA dan program lain yang memiliki kemampuan browser. HTM L dokumen tersebut mirip dengan
11 dokumen teks biasa, hanya dalam dokumen ini sebuah teks bisa memuat instruksi yang ditandai dengan kode atau lebih dikenal dengan TAG tertentu. Sebagai contoh jika ingin membuat teks ditampilkan menjadi tebal seperti: TAM PIL TEBAL, maka penulisannya dilakukan dengan cara:
TAMPIL TEBAL . Tanda
digunakan untuk mengaktifkan instruksi cetak tebal, diikuti oleh teks yang ingin ditebalkan, dan diakhiri dengan tanda untuk menonaktifkan cetak tebal tersebut. Secara garis besar, terdapat 4 jenis elemen dari HTM L: a)
structural. tanda yang menentukan level atau tingkatan dari sebuah teks (contoh,
Golf akan memerintahkan browser untuk menampilkan “Golf” sebagai teks tebal besar yang menunjukkan sebagai Heading 1
b)
presentational. tanda yang menentukan tampilan dari sebuah teks tidak peduli dengan level dari teks tersebut (contoh,
boldface akan menampilkan bold. Tanda presentational saat ini sudah mulai digantikan oleh CSS dan tidak direkomendasikan untuk mengatur tampilan teks,
c)
hypertext. tanda yang menunjukkan pranala ke bagian dari dokumen tersebut atau pranala ke dokumen lain (contoh,
IlmuKita akan menampilkan IlmuKita sebagai sebuah hyperlink ke URL tertentu).
d)
Elemen widget yang membuat objek-objek lain seperti tombol (
), list (), dan garis horizontal ( ).
Selain markup presentational, markup yang lain tidak menentukan bagaimana tampilan dari sebuah teks. Namun untuk saat ini, penggunaan tag HTM L untuk menentukan tampilantelah dianjurkan untuk mulai ditinggalkan dan sebagai gantinya digunakan Cascading Style Sheets.
12 2.2.2 PHP PHP adalah singkatan dari "PHP: Hypertext Preprocessor", yang merupakan sebuah bahasa scripting yang terpasang pada HTM L. Sebagian besar sintaks mirip dengan bahasa C, Java dan Perl, ditambah beberapa fungsi PHP yang spesifik. Tujuan utama penggunaan bahasa ini adalah untuk memungkinkan perancang web menulis halaman web dinamik dengan cepat.Hubungan PHP dengan HTM L Halaman web biasanya disusun dari kode-kode html yang disimpan dalam sebuah file berekstensi .html. File html ini dikirimkan oleh server (atau file) ke browser, kemudian browser menerjemahkan kode-kode tersebut sehingga menghasilkan suatu tampilan yang indah. Lain halnya dengan program php, program ini harus diterjemahkan oleh web-server sehingga menghasilkan kode html yang dikirim ke browser agar dapat ditampilkan. Program ini dapat berdiri sendiri ataupun disisipkan di antara kode-kode HTM L sehingga dapat langsung ditampilkan bersama dengan kode-kode html tersebut. Program php dapat ditambahkan dengan mengapit program tersebut di antara tanda .Tanda-tanda tersebut biasanya disebut tanda untuk escaping (kabur) dari kode html. File html yang telah dibubuhi program php harus diganti ekstensi-nya menjadi .php3 atau .php. PHP merupakan bahasa pemograman web yang bersifat server-side HTM L=embedded scripting, di mana script-nya menyatu dengan HTM L dan berada si server. Artinya adalah sintaks dan perintah-perintah yang kita berikan akan sepenuhnya dijalankan di server tetapi disertakan HTM L biasa. PHP dikenal sebgai bahasa scripting yang menyatu dengan tag HTM L, dieksekusi di server dan digunakan untuk membuat halaman web yang dinamis seperti ASP (Active Server Pages) dan JSP (Java Server Pages).PHP pertama kali dibuat oleh Rasmus Lerdroft, seorang programmer C. Semula
13 PHPdigunakannya untuk menghitung jumlah pengunjung di dalam webnya. Kemudian ia mengeluarkan Personal Home Page Tools versi 1.0 secara gratis. Versi ini pertama kali keluar pada tahun 1995.Isinya adalah sekumpulan script PERL yang dibuatnya untuk membuat halaman webnya menjadi dinamis. Kemudian pada tahun 1996 ia mengeluarkan PHP versi 2.0 yang kemampuannya telah dapat mengakses database dan dapat terintegrasi dengan HTM L. Pada tahun 1998 tepatnya pada tanggal 6 Juni 1998 keluarlah PHP versi 3.0 yang dikeluarkan oleh Rasmus sendiri bersama kelompok pengembang software-nya.. Versi terbaru, yaitu PHP 4.0 keluar pada tanggal 22 M ei 2000 merupakan versi yang lebih lengkap lagi dibandingkan dengan versi sebelumnya. Perubahan yang paling mendasar pada PHP 4.0 adalah terintegrasinya Zend Engine yang dibuat oleh Zend Suraski dan Andi Gutmans yang merupakan penyempurnaan dari PHP scripting engine. Yang lainnya adalah build in HTTP session, tidak lagi menggunakan library tambahan seperti pada PHP. Tujuan dari bahasa scripting ini adalah untuk membuat aplikasi-aplikasi yang dijalankan di atas teknologi web. Dalam hal ini, aplikasi pada umumnya akan memberikan hasil pada web browser, tetapi prosesnya secara keseluruhan dijalankan web server. 2.2.3 Java S cript M enurut Deitel (2003, p24), Java adalah bahasa yang secara keseluruhan menggunakan bahasa object oriented dengan dukungan penuh untuk mendukung teknik software engineering. JavaScript adalah bahasa pemrograman berbasis prototipe yang berjalan disisi klien. Jika berbicara dalam konteks web, sederhananya dapat dipahami JavaScript sebagai bahasa pemrograman yang berjalan khusus untuk di browser atau
14 halaman web agar halaman web menjadi lebih hidup. Kalau dilihat dari suku katanya terdiri dari dua suku kata, yaitu Java dan Script. Java adalah Bahasa pemrograman berorientasi objek, sedangkan Script adalah serangkaian instruksi program. Secara fungsional, JavaScript digunakan untuk menyediakan akses script pada objek yang dibenamkan (embedded). Contoh sederhana dari penggunaan JavaScript adalah membuka halaman pop up, fungsi validasi pada form sebelum data dikirimkan ke server, merubah image kursor ketika melewati objek tertentu, dan lain lain.
2.2.4 Perancangan Menu Perancangan menu diperlukan untuk navigasi pemakai dalam memudahkan penggunak perangkat lunak. Item – item menu dibuat berdasarkan deskripsi kejadian dan keadaan. M enu tersebut disusun dengan hierarki tertentu dimana setiap menu memiliki submenu dan submenu dapat memiliki submenu lagi.
2.2.5 Perancangan Layar Perancangan layar digunakan untuk memudahkan pengguna dalam memakai perangkat lunak. Dalam setiap halamannya perancangan dilakukan dengan format yang tetap. Keuntungan menggunakan perancangan layar dengan format tetap adalah pemakai dapat mengidentifikasikan informasi dengan cepat dan dapat mengatur navigasi dengan perintah-perintah yang konsisten.
15 2.3 Interaksi Manusia dan Komputer(IMK) Interaksi manusia dan komputer merupakan disiplin ilmu yang berhubungan dengan perancangan, evaluasi, danimplementasi sitem 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 kebutuhan, efektif, dan dapat dipakai. Konsep utama dari interaksi manusia dan komputer adalah bagaimana membuat sistem yang mudah dipelajari dan digunakan.
2.3.1 Delapan Aturan Emas Perancangan M enurut Shneiderman (1998, pp 72-73), terdapat delapan aturan emas dalam merancang atarmuka pengguna, yaitu: a. Berusaha untuk konsisten antarmuka pengguna harus memperhatikan konsistensi misalnya konsistensi dalam aksi untuk melakukan tugas yang serupa dan konsisten tampilan (penggunaan istilah, menu, bantuan, warna, dan jenis huruf). b. M emungkinkan pemakai yang sudah terbiasa untuk menggunakan shortcut. Shortcut akan memudahkan pemakai yang sudah terbiasa dan menginginkan interaksi yang singkat dan cepat. c. M emberikan umpan balik (feedback) yang informatif untuk aksi yang sering digunakan, diberi feedback yang sederhana dan mencukupi, sedangkan untuk aksi yang jarang di lakukan berikan feedback yang lebih rumit dan informatif. d. M emberikan suatu tanda untuk penutupan (keadaan akhir). Harus terdapat tanda kapan di mulai, pertengahan, dan akhir dari prosesnya terdapat juga penjelasan yang informatif pada setiap perpindahan proses.
16 e. M emberikan pencegahan kesalahan dan penanganan kesalahan sederhana. Sistem harus dirancang sedemikian rupa agar pemakai tidak dapat membuat kesalahan yang serius. Jika kesalahan itu terjadi sistem harus dapat mendeteksi dan menawarkan instruksi yang sederhana untuk memperbaikinya. f. M emungkinkan pembalikan aksi dengan mudah. Setiap aksi sedapat mungkin harus dapat dibatalkan, sehingga pemakai tidak takut untuk melakukan kesalahan. g. M endukung pusat kendali internal (internal locus of control). Tanggapan sistem yang tidak jelas, urutan memasukkan data yang tidak jelas, kesulitan mendapatkan informasi yang diperlukan, dan ketidakmampuan sistem menghasilkan aksi yang diinginkan akan membuat user merasa tidak memegang kendali. h. M engurangi beban ingatan jangka pendek. Ingatan manusia adalah terbatas, sehingga diusahakan agar tampilan dibuat sesederhana mungkin dan mengurangi pergerakan antara jendela sehingga mengurangi beban ingatan jangka pendek.
2.4 Data Base M enurut Connolly dan Begg (2002, p14), basis data adalah penggunaan bersama dari data yang berhubungan secara logis dan penjelasan dari data tersebut. M enurut Date (2000, p4) basis data adalah suatu record terkomputerisasi yang mempunyai tujuan untuk menyediakan informasi pada saat dibutuhkan. M enurut M cLeod (2001, p259), dua tujuan konsep basis data adalah meminimumkan pengulangan data dan mencapai independensi data. Pengulangan data adalah duplikasi data artinya data yang sama disimpan dalam beberapa file. Independensi data adalah kemampuan untuk membuat perubahan dalam struktur data tanpa membuat perubahan pada program yang memproses data. Independensi data dicapai dengan menempatkan spesifikasi data dalam tabel dan kamus yang terpisah
17 secara fisik dari program.Perubahan pada struktur data hanya dilakukan dalam sekali yaitu tabel. M enurut Date (2000, p13), database adalah sistem terkomputerisasi yang tujuan utama adalah memelihara informasi dan membuat informasi tersedia saat dibutuhkan. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBM S). Sistem basis data dipelajari dalam ilmu informasi.Istilah "basis data" berawal dari ilmu komputer. M eskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, artikel ini mengenai basis data komputer. Catatan yang mirip dengan basis data sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi dan kumpulan data yang berhubungan dengan bisnis. Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur basis data: ini dikenal sebagai model basis data atau model data. M odel yang umum digunakan sekarang adalah model relasional, yang menurut istilah layman mewakili semua informasi dalam bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama antar tabel. M odel yang lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel. Istilah basis data mengacu pada
18 koleksi dari data yang saling berhubungan, dan perangkat lunaknya seharusnya mengacu sebagai sistem manajemen basis data (database management system/DBMS). Jika konteksnya sudah jelas, banyak administrator dan programer menggunakan istilah basis data untuk kedua arti tersebut.
2.4.1 Database Management System M enurut Connolly dan Begg (2002, p16), Database Managemet System (DBM S) adalah sistem perangkat lunak yang memampukan user untuk mendefinisikan, menciptakan, memelihara dan mengontrol akses ke basis data. DBM S berinteraksi dengan program aplikasi pemakai dabbasis data. DBM S menghasilkan fasilitas sebagai berikut : a. M engijinkan pemakai untuk mendefinsikan basis data biasanya melalui DDL. DDL mengizinkan user untuk menspesifikasi tipe data dan struktur serta batasan data yang dapat disimpan dibasis data. b. M engijinkan user (pemakai) untuk melakukan insert, update, delete dan retrieve data dari basis data biasanya melalui DM L. c. M enghasilkan akses pengendalian basis data seperti : 1) Security system untuk membatasi penggunaan basis data. 2) Integrity system untuk menangani konsistensi penyimpanan data. 3) Control concurrency system untuk menangani penggunaan bersama basis data. 4) Control recovery system untuk menyimpan kembali basis data saat terjadi kesalahan pada perangkat keras maupun lunak. 5) User accesible catalog berisi deskripsi data di dalam basis data.
19 M enurut Connolly dan Begg (2002,p18-20), ada lima komponen DBM S yaitu : a) Perangkat keras Dalam menjalankan aplikasi dari DBM S diperlukan perangkat keras. Contoh: single personal computer, single mainframe,jaringan komputer berupa server. b) Perangkat lunak Perangkat lunak meliputi DBM S dan program aplikasi besertasistem operasi.DBM S termasuk perangkat lunak juka DBM S tersebut digunakan dalam jaringan seperti LAN. DBM S yang menggunakan jaringan contoh : C, C++, Visual Basic. c) Data Data mungkin merupakan komponen terpenting dari DBM S khususnya dari sudut pandang pemakai akhir. d) Prosedur Prosedur berupa panduan dan instruksi dalam mengarahkan desain dan penggunaan basis data. Penggunaan dari sistem dan staf dalam mengelola basis data membutuhkan prosedur dalam menjalankansistem dan mengelola basis data itu sendiri. Demikian prosedur di dalam basis data dapat berupa :Login di dalam basis data, penggunaan sebagian fasilitas DBM S, cara menjalankan dan memberhentikan DBM S, membuat salinan dan back up basis data, memeriksa perangkat keras dan perangkat lunak yang sedang berjalan, mengubah struktur basis data, meningkatkan kinerja atau membuat arsip data pada secondary storage. e) M anusia Yang terlibat dalam sistem yaitu database administrator, perancang basis data, pengembang aplikasi, pemakai akhir.
20
2.4.2 Relational Database Relational database adalah representasi logika dari data. Data tersebut dapat diakses tanpa ada ketergantungan dengan struktur fisik dari database tersebut. Relational database merupakan sistem database yang paling banyak dipakai saat ini. Salah satu bahasa yang sering dipakai untuk memanipulasi bahasa adalah SQL.Data dalam relational database disimpan dalam sebuah table dimana terdapat kolom dan baris.
2.4.3 MySQL M enurut Roff (1999, p4), MySQL adalah sebuah alat untuk merorganisir, mengatur, dan menerima data yang tersimpan dari database komputer. Software server MySQL pertama dibuat oleh M ichael “M onthy” Wildenius dan timnya pada tahun 1994. Pemakaian database yang ingin menggunakan M ySQL sebagai database-nya atau “backend” dari aplikasi yang dibangun. Sedangkan M ySQL mempunyai kelebihan dapat diakses oleh banyak bahasa pemrograman. MySQL merupakan database server yang ideal untuk data segala ukuran dengan kemampuan mempunyai kecepatan yang sangat tinggi dalam pemrosesan data, multi-thread, multi-user, dan query. Ukuran database MySQL lebih kecildari file database yang lain.
21 Beberapa pertimbangan programmer memilih MySQL sebagai “backend” dalam mengolah database adalah : a. Kecepatan b. M udah digunakan c. Open source d. Kapabilitas e. Biaya murah f. Keamanan g. Lintas platform 2.5 Rekayasa Piranti Lunak(Software Engineering) Subbab ini menjelaskan lebih rinci tentang rekayasa piranti lunak, karakteristikkarakteristik yang dimiliki oleh rekayasa piranti lunak, dan model sekuensial linear. M odel sekuensial linear adalah metode yang digunakan dalam rancangan web ini. M enurut Pressman (1997, pp10-33), software adalah perintah (program komputer) yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang diinginkan.
2.5.1 Pengenalan Rekayasa Piranti Lunak(Software Engineering) Struktur
data yang memungkinkan
program manipulasi informasi secara
proporsional, dan dokumen yang menggambarkan operasi dan kegunaan program. Software memiliki dua peran, di satu sisi berfungsi sebagai sebuah produk dan disisi lain sebagai kendaraan yang mengantarkan sebuah produk (Pressman, 1997, p4-5). Sebagai produk, software mengantarkan potensi perhitungan yang dibangun oleh software komputer. Baik di dalam sebuah sebuah telepon seluler, atau beroprasi di sebuah
22 mainframe komputer, software merupakan transformer informasi yang memproduksi, mengatur, memperoleh, memodifikasi, menampilkan, atau memancarkan informasi, dimana pekerjaan ini dapat sesederhana bit tunggal atau sekompleks sebuah simulasi multimedia. Sedangkan peran sebagai dasar untuk mengontrol komputer (sistem oprasi), komunikasi informasi (jaringan), dan penciptaan serta kontrol dari program-program lain (peranti dan lingkungan software)
2.5.2 Karakteristik Rekayasa Piranti Lunak Software secara umum dapat dibagi menjadi dua yaitu software sistem dan software aplikasi. M enurut Pressman (1997, p10), Software sistem dapat dibagi lagi menjadi tiga macam yaitu: a. Bahasa pemrograman Bertugas mengkonversikan arsitektur dan algoritma yang dirancang manusia ke dalam format yang dapat dijalankan oleh komputer, contoh bahasa pemrograman diantaranya : BASIC, COBOL, Pascal, C++, FORTRAN. b. Sistem oprasi Saat komputer pertama kali dihidupkan, sistem oprasilah yang pertama kali dijalankan, sistem operasi yang mengatur seluruh proses, menterjemahkan masukan, mengatur proses internal, memanajemen penggunaan memori dan memberikan keluaran ke peralatan yang bersesuaian, contoh sistem operasi : DOS, Unix, Windows 7.
23 c. Utility Software sistem dengan fungsi tertentu, misalnya pemeriksaan perangkat keras (hardware troubleshooting), pemeriksaan disket yang rusak (bukan rusak fisik), mengatur ulang isi harddisk (pastisi,defrag), contoh Utility adalah Norton Utililty. Software aplikasi merupakan bagian software yang sangat banyak dijumpai dan terus menerus berkembang. Software lebih merupakan elemen logika dan bukan merupakan elemen sistem fisik. Software memiliki cirri yang berbeda dari hardware,yaitu : a) Software dibangun dan dikembangkan, tidak dibuat dalam bentuk yang klasik. b) Software tidak pernah using c) Sebagian software dibuat secara custom-built, serta tidak dapat dirakit dari komponen yang sudah ada. Karakteristik produk software : 1. Maintainability 2. Dependability 3. Efficiency 4. Usability 2.5.3 Model Proses S oftware M enurut Pressman (2001, pp29-47), ada beberapa model proses software yang umum digunakan, salah satunya adalah M odel Sekuensial Linear. Sekuensial Linear ini juga dikenal dengan nama “Classic Life Cycle” atau “Waterfall Model”.
24 M odel ini melingkupi aktivitas- aktivitas seperti ditunjukkan pada gambar 2.1 berikut ini :
Gambar 2.1 Waterfall M odel a. Rekayasa dan Pemodelan Sistem Informasi Rekayasa dan pemodelan sistem informasi doperlukan karena perangkat lunak selalu merupakan bagian dari sebuah sistem yang lebih besar, kerja dimulai dengan membangun syarat dari semua elemen sistem dan mengalokasikan beberapa subset dari kebutuhan b. Analisis kebutuhan perangakat lunak Proses pengumpulan kebutuhan diidentifikasikan
dan difokuskan, khususnya
pada perangkat lunak. Untuk memahami sifat program yang dibangun, seorang perancang perangkat
lunak harus memahami kebutuhan informasi, fungsi-
fungsi, unjuk kerja, dan interface yang diperlukan.
25 c. Perancangan Design perangkat lunak sebenarnya adalah proses multi langkah yang berfokus pada empat attribute sebuah program, yaitu struktur data, arsitektur perangkat lunak, representasi interface, dan detail algoritma. d. Pengkodean Design harus diterjemahkan menjadi bentuk yang dapat dibaca atau di mengerti oleh komputer, biasanya dalam bentuk pemrograman. e. Pengujian Sekali kode dibuat, pengujian program juga dimulai. Proses pengujian berfokus pada logika internal perangkat lunak, memastikan bahwa setiap pernyataan sudah diuji dan pada eksternal fungsional yaitu mengarahkan pengujian untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan. f. Pemeliharaan Perangkat lunak akan mengalami perubahan setelah disampaikan kepada pelanggan. Perubahan akan terjadi karena kesalahan-kesalahan ditentukan, karena perangkat lunak harus disesuaikan untuk mengakomodasi perubahanperubahan di dalam lingkungan eksternalnya, atau pelanggan, membutuhkan perkembangan fungsional atau unjuk kerja. Pemeliharaan perangkat lunak mengaplikasi lagi setiap
fase sebelumnya,
sebelumnya dan tidak membuat yang baru lagi.
lalu
memperbaiki program
26 2.6 Unfield Modelling Language(UML) M enurut Deitel (2003, p27), Unified modelling language adalah bahasa grafis yang memungkinkan seseorang yang membangun sebuah system itu menampilkan perancangan object oriented design di notasi pada umumnya. Pada tahun 1994, Grady Booch dan James Rambaugh sepakat bergabung untuk menggunakan metode pengembangan berorientasi objek dengan tujuan membuat proses standart tunggal untuk pengembangan sistem berorientasi objek. Ivar Jacobson bergabung pada tahun 1995, dan mereka bertiga fokus membuat sebuah bahasa pemodelan objek standart sebagai ganti dari pendekatan atau metode berorientasi standart (pada saat menuliskan, mereka bertiga memasarkan metodologi pemodelan objek yang disebut unfield proses).Berdasarkan kerja mereka dan hasil kerja lainnya pada industri, Unfield Modelling Language (UM L) versi 1.0 dirilis pada tahun 1997. UM L tidak memerlukan metode untuk sitem-sistem pengembangan, hanya catatan saat ini telah diterima luas sebagai standart untuk pemodelan objek. Object Management Group (OMG), badan standart industry, mengadopsi UM L pada bulan November 1997 dan terus bekerja untuk meningkatkannya berdasarkan kebutuhan industry.
2.6.1 Use-Case Diagram M enurut M athiassen
(2000, p119),
use case adalah
sebuah
pola yang
menggambarkan hubungan anatara aktor dengan sistem di application domain. aktor itu sendiri adalah abastraksi dari user atau sistem yang lain yang berhubungan langsung dengan sistem. Dengan kata lain, secara grafis menggambarkan siapa yang akan menggunakan sistem dan dengan cara apa pengguna mengaharapkan untuk berinteraksi dengan sistem. Sebuah contoh diagram use-case ditunjukkan pada Gambar 2.2
27
Gambar 2.2 Contoh Diagram M odel Use-case Pemodelan Use-case mengidentifikasi dan menggambarkan fungsi-fungsi sistem dengan menggunakan alat yang disebut use-case.
Gambar 2.3 Simbol use-case Use-case merupakan urutan langkah yang secara tindakan saling terkait (skenario), baik termotifasi maupun secara manual, untuk melengkapi satu tugas bisnis tunggal.
28 2.6.2 Deskripsi Use-case Bagian umum kejadian use-case adalah deskripsi use-case, yaitu langkah demi langkah mulai dengan pelaku menganalisasi use-case dan melanjutkan hingga akhir kejadian bisnis. Dimana didalam deskripsi use-caseterdapat : a. Nama use-case, merupakan nama dari suatu use-case. b. Aktor (actor), pelaku berpartisipasi dalam suatu use-case. c. Tujuan (goal), tujuan dari use-case. d. Prakondisi (pracondition),batasan pada keadaan sistem sebelum use-case dapat di eksekusi. e. Ringkasan (summary), deskripsi ringkasan pendek yang berisi sejumlah kalimat yang menunjukan secara garis besar tujuan use-case dan berbagai kegiatannya f. Related use-case, use-case yang saling berhubungan. g. Langkah-langkah (steps), menjelaskan setiap langkah dari use-case dengan menggunakan dua kolom, dimana kolom sebelah kiri menunjukan aksi dari pelaku dan kolom sebelah kanan merupakan respon yang diberikan oleh sistem.
2.6.3 ActivityDiagram M enurut Jason (2003, p118), Activity diagram / diagram aktivitas adalah diagram statis yang berisi dari beberapa bagian yang membuat system atau subsistem. Diagram ini serupa dengan flowchart, dimana secara grafis diagram ini menggambarkan aliran sekuensial dari kegiatan baik itu proses bisnis atau sebuah use-case. Diagram ini berbeda dari flowchart dimana diagram ini menyediakan sebuah mekanisme untuk menggambarkan kegiatan yang tampak secara pararel.
29 Karena itu, diagram ini sangat berguna untuk memodelkan kegiatan yang akan dilakukan saat sebuah operasi dieksekusi dan untuk memodelkan hasil-hasil dari kegiatankegiatan ini seperti memodelkan event yang menyebabkan window akan ditampilkan atau ditutup. Di bawah ini merupakan simbol-simbol yang ada dalam diagram aktivitas : a.
Initial state menggambarkan awal dari sebuah proses
Gambar 2.4 Initial State b.
State, segi empat bersudut tumpul menggambarkan sebuah kegiatan atau
tugas yang perlu dilakukan.
Gambar 2.5 State c.
Control flow, panah menggambarkan sasaran yang mengawali kegiatan.
Gambar 2.6 Control flow
30 d.
Transition (fork), merupakan bar sinkronisasi dimana kegiatan dapat
dilakukan secara pararel.
Gambar 2.7 Transition(fork) e.
Transition (join), merupakan bar sinkronisasi dimana dua aktivitas yang
mempunyai tujuan yang sama dan tujuan dari keduanya digabung menjadi satu.
Gambar 2.8 Transition (join) f.
Decision, menggambarkan sebuah kegiatan keputusan
Gambar 2.9 Decision
31 g.
Final state menggambarkan akhir dari sebuah proses
Gambar 2.10 Final state
2.6.4 Class Diagram M enurut Jason (2003, p118), Activity diagram banyak memberikan penggambaran dari sebuah sistem dengan cara menyediakan langkah selanjutnya dalam menganalisa sebuah system, mengikuti usecase diagrams. Class diagram menggambarkan struktur objek sistem. Diagram ini menunjukan kelas objek yang menyusun sistem dan juga hubungan antara kelas objek tertentu. Di dalam diagram kelas terdapat class, attribute, dan Behavior. Gambar 2.11 merupakan contoh dari diagram class.Simbol panah menunjukan asosiasi.
Gambar 2.11 Contoh dari class diagram
32 Pada contoh di atas, satu mahasiswa bisa memiliki banyak buku. a. Object Object adalah sesuatu yang nyata atau dapat dilihat, disentuh, atau dirasakan. User menyimpan data serta mencatat perilaku mengenai sesuatu itu. b. Class / kelas Class merupakan satu set object yang memiliki attribute dan behavior yang sama, yang biasa disebut dengan object class. Dibawah ini merupakan contoh dari sebuah class / kelas.
Gambar 2.12 Class dalam UM L c. Attribute Data yang mewakili karakteristik ketertarikan tentang suatu objek.Perhatikan contoh dari attribute yang ada pada kelas orang.
Gambar 2.13 attribute dari kelas orang
33 d. Behavior Behavior merupakan kumpulan dari sesuatu yang dapat dilakukan oleh objek dan terkait dengan fungsi-fungsi yang bertidak pada data objek (atau atribut). Pada siklus berorientasi objek, perilaku objek merujuk pada metode, operasi, atau fungsi. Perhatikan Gambar 2.14.
Gambar 2.14 Behavior dari kelas orang Beberapa simbol lain yang ada pada class diagram adalah : a) Associations menunjukan hubungan kelas yang satu dengan kelas yang lain. Perhatikan Gambar 2.15
Gambar 2.15 Hubungan antara class Buku dan M ahasiswa
34 b) Generalization Generalization merupakan sebuah teknik antara attribute dan behavior yang umum pada beberapa tipe kelas objek, dikelompokkan kedalam kelasnya sendiri. Perhatikan Gambar 2.16.
Gambar 2.16 Hubungan generalisasi c) Aggregation Terkadang sebuah kelas dapat mempunyai beberapa kelas komponen.Dan hubungan
antara kelas dengan kelas komponennya itu bernama
aggregation.
Gambar 2.17 Hubungan Aggregation
35
d) Composities Composities adalah sebuah tipe aggregation yang kuat.Artinya setiap kelas komponen hanya dimiliki oleh satu kelas saja.
Gambar 2.18 Hubungan Composities 2.6.5 Sequence Diagram M enurut Jason (2003, p118), sequence diagram adalah salah satu dari dua tipe diagram interaksiDiagram 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. Gambar 2.19 merupakan contoh dari sequence diagram.
36
Gambar 2.19 Sequence diagram Di bawah ini merupakan simbol-simbol yang ada pada sequence diagram : a) Object lifeline M enggambarkan panjang kehidupan dari suatu objek selama skenario sedang dibuat.
Gambar 2.20 Object lifeline
37 b) Activation Dimana proses sedang dilakukan oleh object / class untuk untuk memenuhi pesan / perintah.
Gambar 2.21 Activation symbol c) Message Sebuah anak panah yang mengidentifikasi pesan diantara objek.Dan objek dapat mengirimkan pesan ke dirinya sendiri.
Gambar 2.21 Message symbol
38
2.6.6 Statechart Diagram Sebuah statechart diagram (Lethbridge and Laganiere, 2002, p267), merupakan cara lain umtuk mengekspresikan informasi dinamis tentang sebuah sistem, diagram ini digunakan untuk menggambarkan fungsi eksternal yang terlihat dari sebuah sistem atau dari sebuah objek secara individu. Contoh statechart diagram dapat dilihat pada Gambar 2.23.
Gambar 2.23 Statechart diagram