12
BAB 2
LANDASAN TEORI
2.1 Perangkat Lunak
2.1.1 Definisi Perangkat Lunak
Menurut Pressman (2001, p6), Perangkat lunak didefinisikan sebagai berikut :
1. Perintah (program komputer) yang bertujuan untuk menjalankan suatu fungsi
yang diinginkan saat dieksekusi.
2. Struktur data yang memungkinkan program memanipulasi informasi, dan
3. Dokumen yang menggambarkan bagaimana suatu program bekerja dan
kegunaan dari program tersebut.
2.1.2 Karakteristik Perangkat Lunak
Perangkat lunak lebih merupakan elemen logika dan bukan merupakan elemen
sistem fisik. Dengan Demikian, perangkat lunak memiliki ciri yang berbeda dari
perangkat keras :
1. Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam bentuk
yang klasik.
Meskipun banyak kesamaan di antara pabrik perangkat keras dan perangkat
lunak, aktivitas keduanya secara mendasar sangat berbeda. Dalam aktivitas
tersebut kualitas yang tinggi dicapai melalui perancangan yang baik, tetapi di
dalam fase pembuatan perangkat keras, selalu saja ditemukan masalah
kualitas yang tidak mudah untuk disesuaikan dengan perangkat lunak. Kedua
13
aktivitas itu tergantung pada manusia, tetapi hubungan antara penerapan yang
dilakukan manusia dengan usaha yang diperoleh sangat berbeda. Kedua
aktivitas itu membutuhkan konstruksi sebuah “produk”, tetapi pendekatan
yang dipakai berbeda.
Biaya untuk perangkat lunak dikonsentrasikan kepada pengembangan. Hal ini
berarti proyek perangkat lunak tidak dapat diatur seperti pengaturan proyek
pemanufakturan.
2. Perangkat lunak tidak rentan terhadap pengaruh linkungan
Seiring dengan berjalannya waktu, perangkat keras sudah mulai menjadi
usang ketika terkena pengaruh penumpukan debu, getaran, ketidakhati-
hatian, suhu tinggi, dan beberapa kerusakan lainnya yang disebabkan oleh
lingkungan, sedangkan perangkat lunak tidak rentan terhadap pengaruh
lingkungan yang merusak yang menyebabkan perangkat keras menjadi usang.
Bila suatu komponen perangkat keras telah usang, komponen dapat diganti
dengan suku cadangnya, namun tidak ada suku cadang bagi perangkat lunak.
Setiap kegagalan perangkat lunak menggambarkan kesalahan dalam
perancangan atau proses di mana rancangan diterjemahkan ke dalam kode
mesin yang dapat dieksukusi. Demikianlah, pemeliharaan perangkat lunak
menjadi lebih kompleks daripada pemeliharaan perangkat keras.
3. Perangkat lunak merupakan satu kesatuan yang lengkap (kompleks) dan tidak
dapat dirakit secara terpisah
Setelah masing-masing komponen diseleksi, perangkat keras dapat dipesan
secara terpisah, berbeda dengan perangkat lunak. Memang memungkinkan
14
untuk memesan perangkat lunak secara terpisah, tetapi tetap merupakan satu
kesatuan yang lengkap, bukan sebagai komponen yang dapat dipasangkan ke
dalam program-program yang baru.
Sebuah komponen perangkat lunak harus dirancang dan dilaksanakan
sehingga dapat digunakan kembali dalam program yang berbeda (can be
reused). Komponen modern yang memungkingkan untuk digunakan kembali
merangkum, baik data dan pengolahan yang diterapkan pada data,
memungkinkan Software Engineer untuk membuat aplikasi baru dari bagian
yang dapat digunakan kembali.
2.1.3 Aplikasi Perangkat Lunak
Area perangkat lunak berikut menunjukkan luasnya potensi dari perangkat lunak
(Pressman, 2001, pp9-11) :
1. Perangkat Lunak Sistem
Perangkat lunak sistem adalah program yang bertujuan untuk melayani
progran – program lainnya.
2. Perangkat Lunak Real-Time
Perangkat lunak real-time adalah program yang menyediakan data kepada
pihak yang membutuhkan saat data tersebut dibutuhkan. Waktu untuk data
dibutuhkan tergantung pada untuk apa perangkat lunak tersebut dibuat,
misalnya tiap detik, tiap mikrodetik, dsb.
15
3. Perangkat Lunak Bisnis
Perangkat lunak bisnis dikembangkan untuk mengakses satu atau lebih
database besar yang berisi informasi bisnis.
4. Perangkat Lunak Teknik dan Ilmu Pengetahuan
Perangkat lunak teknik dan ilmu pengetahuan mempunyai ciri khas
menggunakan “number crunching” algorithms. Perangkat lunak ini
memiliki jangkauan aplikasi mulai dari astronomi sampai vulkanologi, dari
analisis otomotif sampai dinamika orbit pesawat ruang angkasa, dan dari
biologi molekuler dampai pabrik yang sudah diotomatisasi.
5. Embedded Software
Embedded software adalah perangkat lunak yang ditanamkan (embedded)
pada suatu alat elektronik untuk mengontrol hasil, kerja, serta sistem untuk
keperluan konsumen dan pasar industri. Embedded software ada dalam read-
only memory. Embedded software dapat melakukan fungsi yang terbatas
serta fungsi esoterik (misal keypad control untuk microwave) atau
memberikan kemampuan kontrol dan fungsi yang penting (contohnya, fungsi
digital dalam sebuah automobil seperti kontrol bahan bakar, penampilan
dashboard, sistem rem, dll)
6. Perangkat Lunak Komputer Personal
Perangkat lunak komputer personal merupakan perangkat lunak yang
dikembangkan untuk digunakan pada komputer personal. Pengolah kata,
multimedia, hiburan, manajemen database, aplikasi keuangan bisnis dan
16
personal, jaringan eksternal atau akses database hanya merupakan beberapa
saja dari ratusan aplikasi yang ada.
7. Perangkat Lunak Berbasis Web
Halaman web yang diambil oleh browser adalah perangkat lunak yang
menggabungkan instruksi yang dieksekusi (contohnya, CGI, HTML, Perl,
Java) dan data (contohnya, hypertext dan berbagai format visual dan audio).
Pada dasarnya, jaringan menjadi komputer besar yang menyediakan sumber
daya perangkat lunak yang hampir tak terbatas, yang dapat diakses oleh
siapa saja dengan modem.
8. Perangkat Lunak Kecerdasan Buatan
Perangkat lunak kecerdasaran buatan (Artificial Intelligent (AI)) adalah
perangkat lunak yang menggunakan algoritma non-numeris untuk
memecahkan masalah kompleks yang tidak sesuai untuk perhitungan atau
analisis secara langsung. Tujuan utama dari AI adalah memungkinkan
komputer untuk bekerja semirip mungkin dengan manusia.
2.2 Rekayasa Piranti Lunak
2.2.1 Definisi Rekayasa Perangkat Lunak
Rekayasa piranti lunak adalah pengembangan dan penggunaan prinsip – prinsip
pengembangan yang tepat untuk menghasilkan perangkat lunak yang dapat diandalkan,
dapat bekerja dengan baik pada mesin nyata, dan juga ekonomis. (Pressman, 2001, p20).
.
17
2.2.2 Fase Umum Rekayasa Perangkat Lunak
Menurut Pressman (2001, p22) , Usaha yang berhubungan dengan Rekayasa
Perangkat Lunak dapat dikategorikan ke dalam tiga fase umum dengan tanpa
mempedulikan area aplikasi, ukuran proyek, atau kompleksitasnya, yaitu sebagai
berikut:
1. Fase Definisi (Definition Phase)
Pada fase ini, hal – hal yang dilakukan oleh pengembang perangkat lunak
adalah mengidentifikasi informasi apa yang akan diproses, fungsi, dan proses
kerja yang dibutuhkan, mendefinisikan bagaimana sistem berjalan,
menggambarkan interface yang akan dibangun, batasan desain yang ada, dan
mendefinisikan kriteria – kriteria yang jelas untuk mengukur kesuksesan
sistem yang dibangun. Kebutuhan (Requirement) adalah kunci dari sistem
dan perangkat lunak yang didefinisikan.
2. Fase Pengembangan (Development Phase)
Fase ini merupakan masa mendefinisikan bagaimana data dikonstruksikan,
bagaimana fungsi-fungsi diimplementasikan sebagai arsitektur perangkat
lunak, bagaimana detail prosedur akan diimplementasikan, bagaimana
interface diimplementasikan pada perangkat lunak, bagaimana rancangan
akan diterjemahkan ke dalam bahasa pemrograman (atau bahasa non-
prosedural), dan bagaimana pengujian akan dilakukan. Metode yang
digunakan dalam fase pengembangan ini bervariasi, namun terdapat tiga
tugas teknis khusus yang harus selalu ada, yakni perancangan perangkat
lunak, pembuatan kode, dan pengujian perangkat lunak.
18
3. Fase Pemeliharaan (Maintenance Phase)
Fase pemeliharaan lebih difokuskan pada perubahan (change) pada perangkat
lunak yang telah selesai dikembangkan yang dihubungkan dengan koreksi
kesalahan, penyesuaian yang dibutuhkan ketika lingkungan perangkat lunak
berkembang, dan perubahan sehubungan dengan perkembangan yang
disebabkan oleh perubahan kebutuhan pelanggan. Fase ini mengaplikasikan
lagi langkah-langkah pada fase definisi dan fase pengembangan, tetapi tetap
tergantung pada konteks perangkat lunak yang ada. Ada empat tipe
perubahan yang terjadi selama masa fase pengembangan, yaitu :
- Koreksi
Walaupun sudah melewati proses pengujian dan kontrol kualitas terbaik
sekalipun, perangkat lunak tidak bebas dari kesalahan saat diberikan
kepada pengguna. Pemeliharaan korektif bertujuan memperbaiki cacat
atau kerusakan.
- Adaptasi
Dari waktu ke waktu, lingkungan original (contoh : CPU, sistem operasi,
aturan-aturan bisnis, karakteristik produk eksternal) di mana perangkat
lunak dikembangkan akan terus berubah. Pemeliharaan adaptif bertujuan
untuk menyesuaikan perangkat lunak kepada perubahan pada kebutuhan
fungsional original.
- Perkembangan (Enhancement)
Saat perangkat lunak dipakai, pemakai/ pelanggan dapat memikirkan dan
mengajukan fungsi-fungsi tambahan yang memberi mereka keuntungan.
19
Pemeliharaan perkembangan bertujuan memperluas dan menambahkan
fungsi perangkat lunak untuk mengakomodasi permintaan tambahan dari
pelanggan/pengguna.
- Pencegahan
Keadaan perangkat lunak semakin memburuk sehubungan dengan waktu,
dan karena itu, Preventive Maintenance yang sering juga disebut
Rekayasa Perangkat Lunak, harus dilakukan untuk memungkinkan
perangkat lunak melayani kebutuhan para pemakainya. Pada dasarnya,
preventive maintenance bertujuan melakukan perubahan pada program
komputer sehingga bisa menjadi lebih mudah untuk dikoreksi,
disesuaikan, dan dikembangkan dengan teknologi baru.
2.2.3 Model Proses Perangkat Lunak
Model proses untuk Rekayasa Perangkat Lunak dipilih berdasarkan sifat aplikasi
dan proyeknya, metode dan alat-alat bantu yang akan dipakai, dan kontrol serta
penyampaian yang dibutuhkan. Perkembangan perangkat lunak bisa dianggap sebagai
lingkaran pemecahan masalah dimana terdapat empat keadaan berbeda, yaitu status quo,
definisi masalah, perkembangan teknis memecahkan masalah di keseluruhan aplikasi
dari banyak teknologi, dan integrasi pemecahan menyampaikan hasil (contoh :
dokumen, program, data, fungsi bisnis baru, produk baru) kepada siapa yang
membutuhkan pertama kali.
20
2.2.3.1 Model Air Terjun (Waterfall Model)
“Proses model yang terkadang disebut sebagai classic lifecycle atau model
sekuensi linear ini mengusulkan sebuah pendekatan kepada perkembangan perangkat
lunak yang sistematik dan sekuensial yang mulai pada tingkat kemajuan sistem pada
seluruh analisis, desain, kode, pengujian, dan pemeliharaan.” (Pressman 2001, p28).
Gambar 2.1 Gambar Model Waterfall Menurut Pressman
Dimodelkan setelah siklus rekayasa konvensional model ini melingkupi aktivitas-
aktivitas sebagai berikut:
1. Rekayasa dan pemodelan sistem/ informasi
Aktivitas ini menyangkut pengumpulan kebutuhan pada tingkat sistem
dengan sejumlah kecil analisis serta desain tingkat puncak, juga mencakup
pengumpulan kebutuhan pada tingkat bisnis strategis dan tingkat area bisnis.
2. Analisis kebutuhan perangkat lunak
Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khususnya
pada perangkat lunak. Untuk memahami sifat program yang dibangun,
perekaya perangkat lunak (analis) harus memahami domain informasi,
tingkah laku, unjuk kerja, dan antarmuka yang diperlukan. Kebutuhan baik
analisis desain kode tes
Permodelan sistem Informasi
21
untuk sistem maupun perangkat lunak didokumentasikan dan dilihat lagi
dengan pelanggan.
3. Desain
Desain perangkat lunak sebenarnya adalah proses multi langkah yang
berfokus pada empat atribut sebuah program berbeda; struktur data, arsitektur
perangkat lunak, representasi interface, dan detail (algoritma) procedural.
Proses desain menerjemahkan syarat/ kebutuhan ke dalam sebuah
representasi perangkat lunak yang dapat diperkirakan demu kualitas sebelum
pemunculan kode, desain menjadi bagian dari konfigurasi perangkat lunak.
4. Generasi kode
Desain harus diterjemahkan ke dalam bentuk mesin yang bisa dibaca,
langkah pembuatan kode melakukan tugas ini. Jika desain dilakukan dengan
cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis.
5. Pengujian
Setelah kode dibuat, pengujian program dimulai. Proses pengujian berfokus
pada logika internal perangkat lunak, memastikan bahwa semua 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.
6. Pemeliharaan
Perangkat lunak akan sangat mungkin mengalami perubahan setelah
disampaikan kepada pelanggan, hal itu dapat terjadi karena kesalahan-
22
kesalahan ditemukan, karena perangkat lunak harus disesuaikan untuk
mengakomodasi perubahan-perubahan di dalam lingkungan eksternalnya,
atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk
kerja. Pemeliharaan perangkat lunak mengaplikasikan lagi setiap fase
program sebelumnya dan tidak membuat baru lagi.
2.3 Aplikasi Berbasis Web
Aplikasi adalah sebuah program atau sekumpulan program atau software yang
dibuat untuk end user. Aplikasi berbasis Web merupakan e-application.
Menurut Kadir (2004, p3), “Aplikasi Web adalah suatu aplikasi yang dapat
membentuk halaman-halaman Web berdasarkan permintaan pemakai.”
Berbagai contoh aplikasi Web :
• Mesin pencari atau search engine (contoh : google, yahoo search)
• Toko Online (contoh : bookpool, amazon, dll)
• Lelang Online (contoh : eBay)
• Perbankan (contoh : klikbca)
• Situs-situs berita (contoh : detik.com, cnn, kompas, dll)
• Layanan Akademis Perguruan Tinggi (contoh : binusmaya.binus.ac.id)
Berbeda dengan Aplikasi berbasis desktop, yang menjalankan fungsinya secara
langsung pada masing-masing komputer, Aplikasi Web merupakan salah satu contoh
aplikasi client/ server. Client mewakili computer yang digunakan oleh seorang pemakai
yang hendak menggunakan aplikasi, sedangkan server mewakili computer yang
menyediakan layanan aplikasi. Ciri khas yang lain pada penggunaan aplikasi Web,
23
pemakai menggunakan perangkat lunak yang dinamakan perambah atau Web Browser
atau sering disebut browser saja, misalnya Internet Explorer dan Mozilla Firefox untuk
mengakses aplikasi Web.
- Adaptive Web
Menurut Peter Brusilovksy,dkk (2007, p3) adaptive web adalah sebuah website
yang dapat merepresentasikan informasi sesuai dengan tingkah laku user, misalnya saat
user bernavigasi dari satu halaman ke halaman lain, sistem dapat memanipulasi link
(mengurutkan, menutupi) untuk menyediakan dukungan navigasi yang adaptif.
Gambar 2.2 Arsitektur Aplikasi Berbasis Web
Middleware adalah perangkat lunak yang menerjemahkan kode-kode khusus
untuk dapat berinteraksi dengan program database melalui bantuan Web server.
Web Server adalah sebuah perangkat lunak server yang berfungsi menerima
permintaan HTTP atau HTTPS dari klien yang dikenal dengan web browser dan
mengirimkan kembali hasilnya dalam bentuk halaman-halaman web yang umumnya
24
berbentuk dokumen HTML. Web server digunakan untuk menyimpan halaman website
atau homepage. Contoh : Apache, IIS.
Web browser adalah suatu perangkat lunak yang digunakan untuk menampilkan
halaman-halaman website atau informasi dari web server. Contoh : Internet Explorer,
Mozilla Firefox.
Pada dasarnya, pemrograman web dibedakan menjadi dua kelompok, yaitu
client-side programming dan server-side programming. Perbedaan utamanya terletak
pada tempat mengeksekusi script-nya.
1. Client-Side Scripting (contoh: HTML, CSS, Javascript)
Karakteristik client-side scripting :
a. Kode program di-download bersama dengan halaman web
b. Bersifat interpreter dan diterjemahkan oleh browser
c. Model eksekusinya sederhana dan script dapat dijadikan satu dengan
HTML
Keuntungan utamanya adalah bahwa setiap web browser menggunakan
sumber daya sendiri untuk mengeksekusi kode yang ditemukan pada
halaman web. Hal ini meringankan beban pada server dan transfer data
menjadi lebih cepat.
Client-side scripting juga tidak memerlukan server khusus untuk
menjalankannya.
2. Server-Side Scripting (contoh : ASP, PHP, JSP)
Karakteristik Server-side Scripting :
a. Ada client yang meminta request
25
b. Eksekusi program dilakukan di server
c. Mengirimkan hasil ke client
Keuntungan :
a. Karena semua kode server-side dijalankan sebelum HTML dikirimkan ke
browser, kode dapat disembunyikan, tidak dilihat oleh client.
b. Cross platform, independen, tidak tergantung pada browser tertentu.
c. Dapat mengakses database.
d. Server-side scripting dapat mengakses sistem file yang berada pada web
server, sedangkan client-side tidak.
Namun, transfer data server-side scripting lebih lambat daripada client-side
programming karena script diterjemahkan di server dahulu baru kemudian
tampilan di-load di client.
2.4 Internet
Internet, yang merupakan singkatan dari Interconnected Networks dan kadang
hanya disebut sebagai “Net”, adalah “kumpulan jaringan – jaringan komputer (networks)
sedunia yang saling berhubungan satu sama lain dengan menggunakan identitas yang
disebut dengan TCP/IP” (Y. Maryono dan B. Patmi Istiana, 2008, p3).
Menurut Ferguson (2006, p1), “Internet adalah jaringan komputer yang
terhubung secara global dengan kabel dan jaringan telepon berkecepatan tinggi, dan juga
melalui koneksi nirkabel (dikenal sebagai Wi-Fi).”
26
Menurut Turban (2006, p69), “Internet adalah sistem global jaringan komputer-
sebuah jaringan untuk berbagai jaringan; fasilitas publik kooperatif dan dapat berjalan
sendiri yang dapat diakses ratusan dari jutaan manusia di seluruh dunia.”
Jadi Internet dapat diartikan sebagai suatu jaringan komputer yang sangat besar
yang menghubungkan komputer – komputer yang terletak di seluruh dunia, yang
dikenali secara unik dengan pengalamatan (TCP/IP logical addressing), terhubung
dengan jaringan kabel maupun nirkabel, dan merupakan fasilitas yang dapat diakses oleh
publik dengan tidak terbatas.
Awal mula Internet berawal dari tahun 1958, dimana pada Februari 1958
Departemen Pertahanan Amerika Serikat menciptakan Advanced Research Projects
Agency (ARPA) untuk membantu Amerika Serikat menjadi pemimpin di bidang
teknologi. Dengan tujuan utama membuat komunikasi yang tidak mudah terputus,
diciptakanlah packet switching pada tahun 1968. Pada tahun 1969, ARPA menciptakan
jaringan dari jaringan dengan menggunakan packet switching yang diberi nama
ARPANET. ARPANET kemudian berkembang dengan banyaknya universitas, para
ilmuwan dan militer yang terhubung ke jaringan ini.
Pada era 1970 – 1980, ARPANET dibuka untuk publik. Demonstrasi publik
pertama dari ARPANET dilakukan pada tahun 1972, dan beberapa organisasi mulai
terhubung kedalamnya. Kemudian pada tahun 1983, aturan baru yang bernama TCP/IP
diintegrasikan ke dalam ARPANET. Pada tahun 1986, National Science Foundation
menciptakan NSFNET yang jauh lebih cepat dari ARPANET, dimana NSFNET ini
menghubungkan lima komputer yang terletak pada Universitas Princeton, Universitas
Pittsburgh, Universitas California – San Diego, Universitas Illinois-Urbana-Champaign,
27
dan Universitas Cornell. Tujuan utamanya adalah menghubungkan ilmuwan dan peneliti
utama dalam satu jaringan. Dengan berkembangnya NSFNET, pada tahun 1990,
ARPANET sudah tidak dipakai lagi dan digantikan dengan NSFNET. Lalu pada tahun
1993, diciptakan jaringan yang lebih cepat dan mempunyai kapasitas transmisi yang
lebih besar dibandingkan dengan NSFNET, dimana jaringan ini menjadi backbone dari
Internet.
2.5 World Wide Web
Menurut Yuhefizar (2008, p159), “World Wide Web, yang sering disingkat
menjadi www atau Web adalah suatu metode untuk menampilkan informasi di Internet,
baik berupa teks, gambar, suara maupun video yang interaktif dan mempunyai kelebihan
untuk menghubungkan satu dokumen dengan dokumen lainnnya yang dapat diakses
melalui sebuah browser”. Informasi yang disajikan melalui Web ini dibangun dengan
bahasa HTML (HyperText Markup Language), dan kemudian ditingkatkan fungsinya
dengan menyisipkan kode – kode bahasa pemrograman seperti ASP.NET sehingga
mampu menampilkan informasi yang lebih interaktif dan dinamis serta terhubung
dengan database.
2.6 HTML
HTML merupakan bahasa yang digunakan dalam membangun sebuah halaman
Web. HTML bukan merupakan bahasa pemrograman. HTML diciptakan oleh Tim
Berners-Lee, yang bekerja sama dengan Robert Caillau, saat mereka bekerja di CERN
pada tahun 1989. Tujuan utama dari HTML adalah menciptakan suatu bahasa untuk
28
membangun suatu dokumen Hypertext yang digunakan untuk berkomunikasi melalui
Internet dengan bebas, dimana bahasa tersebut dapat berjalan pada berbagai mesin
(platform independent).
HTML merupakan bahasa yang digunakan oleh Web browser untuk membaca
kalimat dan gambar untuk membangun sebuah halaman Web secara dinamis. Tim
Berners-Lee lalu membangun sebuah organisasi yang bernama World Wide Web
Consortium (W3C) sebagai organisasi yang mengatur standar dari HTML dan World
Wide Web itu sendiri. Versi terbaru dari HTML yang didefinisikan oleh W3C adalah
versi 4.01 pada Desember 1999.
Format dari HTML ditulis dalam HTML elements yang terdiri dari tags yang
berada dalam kurung (< dan >). Tag HTML biasanya terdiri dari satu pasang, seperti
<b> dan </b> dimana tag pertama disebut opening tags dan tag terakhir disebut sebagai
closing tags. Contoh dari bahasa HTML adalah :
<!doctype html>
<html>
<head>
<title>Hello HTML</title>
</head>
<body>
<p>Hello World!</p>
</body>
</html>
29
Secara umum, struktur utama dari suatu dokumen HTML terdiri dari :
1. <html> … </html>
Merupakan elemen dasar dari suatu dokumen HTML. Semua elemen lain berada
dalam elemen html ini. Elemen ini juga sebagai penanda awal dan akhir suatu
dokumen HTML. Didefinisikan pada HTML 2.0 yang masih dipakai hingga
sekarang.
2. <head> … </head>
Berisi informasi – informasi dasar dan metadata dari suatu dokumen HTML.
Didefinisikan pada HTML 2.0 dan masih dipakai hingga sekarang.
3. <body> … </body>
Berisi bagian – bagian yang akan ditampilkan oleh browser dalam suatu
dokumen HTML. Didefinisikan pada HTML 2.0 dan masih dipakai hingga
sekarang.
Bahasa HTML didistribusikan dengan menggunakan protokol HTTP, yaitu
standar komunikasi yang digunakan untuk men-transfer halaman melalui WWW sebagai
bagian dari Internet. HTTP bekerja dengan sebuah URL (Uniform Resource Locator).
Sebuah URL terdiri dari komponon – komponen sebagai berikut :
1. http:// : http menunjukkan protokol yang dipakai dan harus diikuti
dengan tanda titik dua (:) dan dua buah tanda slash (//).
2. Nama dari komputer tempat dokumen HTML yang diinginkan berada.
Biasanya ini merupakan nama domain (misalnya binusmaya.binus.ac.id).
3. Port yang sesuai dengan Web server yang dituju. Untuk HTTP biasanya
digunakan port 80 dan dipisahkan dengan tanda titik dua dari domain name.
30
Port ini biasanya tidak perlu ditulis dalam URL dan akan diasumsikan
sebagai 80 oleh browser. Port merupakan alamat secara logika yang
membedakan aplikasi yang menggunakan jaringan pada sistem operasi.
4. Absolute Path, dipisahkan oleh satu tanda slash (/), yang menunjukkan folder
dimana dokumen yang diinginkan berada, termasuk juga nama dokumen.
Contoh URL yang lengkap adalah :
http://binusmaya.binus.ac.id/Service/Student/Lecture.aspx.
2.7 Java Script
Java Script merupakan bahasa scripting yang pertama kali dikembangkan oleh
Netscape pada tahun 1995. Java Script merupakan bahasa pemrograman web yang
berjalan pada sisi client, bukan pada sisi server. Java Script tidak memerlukan
kompilator atau penerjemah khusus untuk menjalankannya. Awalnya, Java Script
dikenal dengan nama “LiveScript” yang berfungsi sebagai bahasa yang sederhana untuk
browser Netscape Navigator 2. Pada saat itu, bahasa ini banyak dikritik karena terkesan
pembuatannya terburu-buru dan tidak ada pesan kesalahan yang ditampikan ketika
membuat kesalahan pada penyusunan dengan program tersebut. Kemudian dengan kerja
sama antara Netscape dan Sun (pengembang program Java) maka Netscape memberikan
nama “Javascript” kepada bahasa tersebut pada tanggal 4 Desember 1995. Pada saat
bersaman, Microsoft mengadaptasi teknologi tersebut yang dinamakan “Jscript” pada
browser Internet Explorer 3.
Java Script memiliki sifat case sensitive, yang artinya program mengenali huruf
besar dan kecil pada setiap nama variabel dan fungsinya. Contoh, sebuah variabel
31
“COBA” dan “coba” akan memiliki nilai dan alamatnya masing-masing dan dianggap
sebagai dua variabel yang berbeda satu sama lain.
Java Script dan Java adalah dua buah bahasa yang berbeda satu sama lain.
Dimana, perbedaan yang paling mendasar adalah kode program pada Java Script dapat
terlihat langsung di sisi klien, kode tersebut ditulis langsung terintetgrasi dengan file
HTML, sedangkan Java, kode program terkompilasi (dalam bentuk applet) dan tidak
terlihat dalam file HTML, hanya hasil kompilasi saja yang dijalankan oleh komputer
klien.
Semua kode JavaScript harus dimasukan dalam sebuah tag khusus yang diawali
dengan tag <script> dan diakhiri dengan tag </script>.
Contoh :
<script language = “JavaScript”>
document.write(“This is My First JavaScript Code!”);
</script>
2.8 CSS
Menurut Juju (2007, p9), “CSS (Cascading Style Sheet) adalah sebuah metode
yang yang digunakan untuk mempersingkat penulisan tag HTML, seperti font, color,
text, dan table menjadi lebih ringkas sehingga tidak terjadi pengulangan penulisan”. CSS
adalah bahasa style sheet yang digunakan untuk mengatur tampilan dokumen. Dengan
adanya CSS, memungkinkan developer untuk menampilkan halaman yang sama dengan
format berbeda. CSS sendiri merupakan sebuah teknologi internet yang
direkomendasikan oleh World Wide Consortium atau W3C pada tahun 1996.
32
Cara penulisan script CSS dibagi menjadi tiga, yaitu :
1. Inline Style Sheet
Cara penulisan ini menuliskan sintaks CSS langsung dalam elemen
HTMLnya (ditulis bersamaan dengan tag HTML yang ingin diberi style).
Untuk metode ini, rata-rata jarang digunakan karena tidak efisien. Fungsinya
hampir sama seperti menuliskan property pada tag HTML, penggunaanya
untuk hal-hal tertentu saja. Misalnya, bila ingin memberikan warna hijau
pada tag <p>, maka cara penulisannya adalah sebagai berikut :
<p style = “color : green”>
2. Embedded Style Sheet
Cara penulisan ini menuliskan sintaks CSS di dalam dokumen HTML dengan
metode Embedded yaitu dengan menggunakan tag <style> dan </style>.
Contoh :
<style type = “text/css”>
h1 {color : red}
</style>
3. Linked Style Sheet
Cara penulisan ini menuliskan sintaks CSS di halaman yang berbeda atau
terpisah dari HTML. Jadi, developer hanya perlu melakukan pemanggilan
link ke file CSS yang telah dibuat. Untuk metode ini, menggunakan tag <link
rel> yang ditempatkan pada bagian tag <head>.
<link rel="stylesheet" type="text/css" media="all"
href="~/Common/Css/css.css"/>
33
Keuntungan cara penulisan ini adalah kemudahan dalam mengedit script CSS
karena hanya file CSS saja yang harus diubah bila ingin merubah style.
CSS memiliki aturan dalam penulisannya, yang terdiri atas :
1. Selector
Selector terdiri dari Tag, Class, Ids, dan Pseudo yang digunakan sebagai
pemisah antarelemen. Bagian pertama sebelum tanda “{}” itulah yang
dinamakan selector.
2. Declaration
Declaration digunakan untuk mendeskripsikan property atau value yang
akan digunakan pada selector atau pemisah.
Contoh penggunaan aturan :
h1
{
Color : #0000FF;
}
Keterangan :
Selector = h1
Property = color
Value = #0000FF
2.9 ASP.NET
“ASP.NET merupakan teknologi Microsoft yang dikhususkan untuk
pengembangkan aplikasi berbasis Web dinamis berbasis platform .NET Framework”
34
(Kurniawan, 2009, p1). ASP.NET didesain untuk memberikan kemudahan pada
pengembang Web untuk membuat aplikasi berbasis Web dengan cepat, mudah, dan
efisien karena meminimalkan penulisan kode program dengan bantuan komponen-
komponen yang tersedia, sehingga dapat meningkatkan produktivitas.
2.10 C#
Bahasa C# dikembangkan oleh tim kecil di Microsoft di bawah pimpinan Anders
Hejlsberg dan Scott Wiltamuth. C# adalah pengembangan dari bahasa pemrograman
sebelumnya, yaitu C/C++, Java, dan Visual Basic. Menurut tim pembuatnya, C#
memiliki kehandalan yang dimiliki C/C++, mendukung pemrograman berbasis objek,
seperti Java, serta kemudahan Rapid Application Development, seperti Visual Basic.
Tujuan bahasa C# adalah untuk menyediakan tool untuk pengembangan program
yang sederhana, aman, berbasis objek, dan mempunyai performa yang handal. Sama
seperti Bahasa sebelumnya, C dan C++, C# bersifat case sensitive, yaitu membedakan
antara huruf kecil dan besar.
C# mempunyai tipe data dasar, seperti pada table berikut :
Tabel 2.1 Tipe Data C#
Tipe Keterangan
bool Merepresentasikan nilai true/ false
byte 8-bit unsigned integer
char Character
decimal Numeric types untuk financial calculations
35
double Double-precision floating point
float Single-precision floating point
int Integer
long Long integer
sbyte 8-bit signed integer
short Short integer
uint Unsigned integer
ulong Unsigned long integer
unshort Unsigned short integer
Program yang cukup besar dapat dibagi menjadi beberapa bagian yang lebih
kecil agar mengurangi kompleksitas program yang ditulis, masalah yang kompleks lebih
mudah untuk diselesaikan, dan program menjadi lebih spesifik dan terarah dengan
menggunakan method. Menggunakan lebih dari satu method dapat memudahkan
programmer untuk mengurangi kompleksitas program. Method adalah kumpulan
statement yang mempunyai tujuan untuk menyelesaikan satu tugas yang diinginkan
secara spesifik. Penggunaan method tunggal akan menyebabkan program sulit untuk di-
maintain karena menjadi kompleks dan rumit.
Pada C#, secara umum dikenal dua macam method, yaitu method yang
mengembalikan nilai dan method yang tidak mengembalikan nilai. Method yang tidak
mengembalikan nilai menggunakan keyword void :
36
public void fillMenu()
{
//code program
}
Cara memanggil :
fillMenu();
sedangkan, method yang mengembalikan nilai, menggunakan keyword return :
public bool isActive
{
If( …… ) //condition
{
//code program
return true;
}
else
{
//code program
return false;
}
}
Cara memanggil :
Bool boolIsActive = isActive();
2
d
m
p
a
k
t
A
b
d
d
2.11 Inter
Inter
disiplin ilm
melakukan e
pada peranc
adalah bagi
komputer.
Berd
the User In
Aturan ini m
berlaku pad
diterjemahk
diperlukan r
1. B
A
s
s
d
raksi Manu
raksi Manus
mu yang me
evaluasi pad
angan dan e
ian sistem
dasarkan teor
nterface, da
merupakan ku
da hampir s
an dengan
rancangan an
Berusahalah
Aksi – aksi
sama. Termin
screen. Kons
dalam mengg
usia Dan Ko
sia-Kompute
mpelajari b
da tampilan d
valuasi anta
komputer y
Gamb
ri dari Shnei
alam meranc
umpulan dar
emua sistem
baik. Untu
ntarmuka yan
untuk konsi
yang konsis
nologi yang
sistensi diper
gunakan apli
mputer
er, yang bia
bagaimana m
dari suatu si
armuka pema
yang memu
bar 2.3 Stru
iderman (20
cang suatu
ri prinsip – p
m interaktif
uk meningk
ng baik.
isten
sten diperluk
g sama harus
rlukan agar p
ikasi.
asa disebut d
merancang,
stem kompu
akai (user in
ungkinkan m
uktur IMK
010, pp88-89
aplikasi ter
prinsip yang
setelah dip
katkan keg
kan dalam s
s dipakai dal
pengguna da
dengan IMK
mengimplem
utasi interakt
terface). An
manusia ber
9), dalam bu
rdapat delap
didapat dari
perbaiki, dik
gunaan dari
situasi – situ
lam prompts
apat lebih mu
K, adalah se
mentasikan,
tif. IMK ber
ntarmuka pem
rinteraksi de
ukunya Desig
pan aturan e
i pengalama
kembangkan
suatu apl
uasi yang ha
s, menu, dan
udah dan ter
37
ebuah
serta
rfokus
makai
engan
gning
emas.
an dan
n, dan
likasi,
ampir
n help
rbiasa
38
2. Berprinsip pada kegunaan universal.
Pahami kebutuhan dari berbagai user yang ada, buat design yang dapat
memfasilitasi perubahan dari isi halaman. Perbedaan antara pemula dengan
ahli, perbedaan usia pemakai, user yang abnormal, dan perbedaan teknologi
dapat mempengaruhi kebutuhan dalam melakukan desain. Menambahkan
fasilitas untuk pemula seperti penjelasan singkat, dan fasilitas untuk ahli
seperti shortcut dapat meningkatkan kualitas sistem secara keseluruhan.
3. Berikan umpan balik / balasan yang informatif.
Untuk setiap aksi operator, seharusnya ada umpan balik / balasan dari sistem.
Untuk aksi minor dan sering, respon seharusnya sederhana, sedangkan untuk
aksi major dan tidak sering, respon seharusnya lebih terlihat.
4. Berikan dialog untuk menandakan penutupan.
Rangkaian aksi seharusnya diatur dalam kelompok permulaan, pertengahan,
dan akhir. umpan balik yang informatif saat suatu rangkaian aksi telah selesai
dilakukan akan memberikan perasaan puas kepada pengguna, perasaan lega,
dan sebagai indikasi bahwa rangkaian aksi telah selesai yang menyiapkan
aksi selanjutnya.
5. Berikan penanganan kesalahan yang sederhana.
Selalu berusaha merancang sistem sedemikian rupa sehingga pengguna tidak
dapat membuat kesalahan besar. Jika terjadi kesalahan, sistem harus dapat
mendeteksi kesalahan dan menawarkan penanganan kesalahan yang
sederhana dan memiliki mekanisme yang komprehensif.
39
6. Memungkinkan pembalikan aksi yang mudah.
Fitur ini menghilangkan kegelisahan, karena pengguna mengetahui bahwa
jika terjadi kesalahan dapat dilakukan pembalikan aksi dengan mudah,
sehingga mendorong pengguna untuk mengeksplorasi opsi – opsi yang baru.
Bagian dari pembalikan aksi bisa terdiri dari aksi tunggal, pengisian data,
atau rangkaian aksi yang lengkap.
7. Mendukung internal locus of control.
Pengguna mahir sangat menginginkan perasaan bahwa mereka mempunyai
kontrol pada sistem dan sistem merespon sesuai dengan aksi mereka. Buat
sistem yang membuat pengguna merasakan mereka sebagai pihak yang
memulai aksi, bukan sebagai perespon.
8. Kurangi beban ingatan jangka pendek.
Keterbatasan pada kemampuan mengolah informasi pada ingatan jangka
pendek membutuhkan rancangan layar yang sederhana, halaman yang lebih
dari satu disederhanakan, frekuensi pergerakan window dikurangi, dan
pelatihan yang cukup diberikan untuk kode – kode, penghafalan, dan
rangkaian aksi.
2.12 Front End Dan Back End
Sistem Web adalah sistem informasi yang komponennya dapat diklasifikasikan
menjadi dua komponen, yakni Front End dan Back End. Dimana secara umum, Front
End berkaitan dengan interaksi langsungnya dengan end user dan tentunya melibatkan
unsur UI (User Interfaces) yang baik dan menarik, sedangkan Back End lebih berkaitan
40
dengan proses pengolahan semua data dan informasi yang akan ditampilkan di Front
End yang nantinya akan dilihat oleh User. Back End dapat dikatakan sebagai halaman
administrator yang memiliki fungsi pengolahan input data dan informasi, seperti insert,
update, delete, upload, dan lain-lain. Berikut ini adalah penjelasan rinci mengenai Front
End dan Back End.
2.12.1 Front End
Front End adalah halaman Website yang dilihat dan dikunjungi oleh end user.
Apa yang dimuat di Website tersebut dan dapat dilihat dan diakses oleh end user adalah
Front End. Halaman home dan segala halaman dengan konten-konten berupa tulisan,
gambar, video, dan lain-lain merupakan Front End.
Front End lebih mengutamakan unsur keindahan dan UI yang baik karena Front
End dinikmati oleh end user, apa yang disajikan hendaknya bersifat user friendly dan
dapat dipercaya.
2.12.2 Back End
Istilah Back End memang tidak sepopuler Front End yang biasa dikunjungi oleh
user, karena semua tampilan Website yang dapat diakses oleh end user adalah Front
End. Istilah Back End sebetulnya digunakan dalam istilah arsitektur perangkat lunak
yang mengindikasikan hasil dari proses pengerjaan sebuah proyek dimana Front End
adalah bagian penting untuk menerima setiap masukkan yang nantinya akan dieksekusi
oleh Back End. Back End merupakan tempat awal mula proses sebuah produk/hasil itu
dibuat, dan kemudian bisa langsung dinikmati secara global di Front End. Begitu juga
41
halnya dalam istilah Website, Back End bisa dikatakan sebagai dapur dari Front End,
atau Website yang selama ini dinikmati oleh para pengguna internet.
Jadi, Back End dapat dikatakan sebagai “dapur” dalam mengolah (edit, link,
insert, update, dsb) untuk disajikan di Front End. Back End dibuat oleh developer untuk
meminimalisasi “sentuhan” langsung terhadap coding Front End, karena tidak semua
staff terlibat berhak untuk mengedit langsung coding dan alur pemrograman yang ada
pada Front End, hal itu tentunya memudahkan alur penyampaian data dan keamanan.
Karena hanya orang yang memiliki hak akses yang dapat mengakses aplikasi Back End
tersebut.
2.13 Sistem Basis Data
2.13.1 Data
Menurut Whitten (2004, p23), “data adalah fakta mentah mengenai orang,
tempat, kejadian, dan hal-hal yang penting dalam organisasi.”
Menurut Elmasri (2000, p24), “data itu dapat di-record dan memiliki arti yang
implisit.”
Data dikombinasikan, disaring, diorganisasikan, dan dianalisa untuk
menghasilkan informasi yang berguna, untuk membantu manajer merencanakan dan
mengoperasikan bisnis yang ada pada perusahaan.
42
2.13.2 Informasi
Menurut Kadir (2000, p7), “informasi adalah hasil analisis dan sintetis terhadap
data.” Menurut Turban (2006, p52), “informasi adalah data yang diatur sehingga
memiliki makna dan nilai bagi penerimanya.”
Dengan kata lain, informasi dapat dikatakan sebagai data yang telah diorganisir
ke dalam bentuk yang sesuai dengan kebutuhan seseorang, diseluruh tingkat organisasi
perusahaan. Informasi adalah hasil dari pengolahan data yang benar, apabila data diolah
dengan baik, maka akan menghasilkan informasi yang akurat dan berguna bagi user.
2.13.3 Basis Data (Database)
Menurut Mannino (2007, p4), “Database adalah sebuah kumpulan dari data yang
persistent yang dapat dibagi dan saling berhubungan.”
Menurut Connolly (2002, p15), “Database adalah kumpulan data yang terhubung
secara logically yang terbagi, dan gambaran dari sebuah data, dibuat untuk menemukan
informasi yang dibutuhkan oleh sebuah perusahaan.”
Menurut Elmasri (2000, p24), “Database adalah sekumpulan data yang saling
berhubungan.”
Jadi, dapat disimpulkan bahwa Database merupakan kumpulan data yang saling
berhubungan dengan alasan tertentu.
Database memiliki beberapa keuntungan khusus, di antaranya :
1. Data yang independen, sehingga memisahkan antara data dengan aplikasi
dalam penyimpanannya.
43
2. Akses data yang efisien, dengan berbagai teknik yang tersedia dalam
perankat lunak pengolah database, maka data yang besar dapat diolah dan
diakses dengan cepat.
3. Integritas dan keamanan data yang lebih kuat, dengan memanfaatkan akses
control dari database itu sendiri.
4. Pemulihan saat terjadi kerusakan saat ini sudah dimiliki oleh hampir semua
perangkat lunak Database Management System, dengan adanya fasilitas
backup dan recovery.
5. Yang terakhir, dengan adanya penggunaan database (yang seakan sudah
menjadi kewajiban bagi para pengembang aplikasi sistem informasi saat ini),
waktu yang dibutuhkan untuk mengembangkan aplikasi sistem informasi
tentu saja menjadi lebih cepat.
2.13.4 Sistem Manajemen Basis Data (Database Management System)
Menurut Connolly, dkk (2002, p16), “DBMS (Database Management System)
adalah sebuah sistem software yang memungkinkan user membagi, membuat, mengatur,
dan akses kontrol ke database.”
Menurut Mannino (2007, p6), “Database Management System adalah kumpulan
dari komponen-komponen yang mendukung perolehan data, penyebarluasan,
pemeliharaan, pengambilan, dan format.”
Menurut Rizky (2008, p28), “Database Management System merupakan sebuah
perangkat lunak yang bertujuan untuk mengatur dan mengorganisasi sistem database.”
44
Jadi Database Management System dapat diartikan sebagai suatu perangkat lunak
yang berfungsi untuk membuat, mengatur, dan memberikan akses serta kontrol ke
database.
2.13.5 Entity Relationship
Menurut Silberschatz (2002, p8), “Entity Relationship (ER) adalah gabungan
antara entity (entitas) dan relationship (hubungan) diantara objek-objek.”
Menurut Connolly (2002, p15), “entity adalah objek yang mencolok (manusia,
tempat, benda, konsep atau kegiatan) dari sebuah perusahaan yang menggambarkan
database. Attribute adalah property yang menggambarkan beberapa objek yang ingin
disimpan. Relationship adalah hubungan antara entity.”
Jadi Entity Relationship adalah gambaran yang memperlihatkan gabungan antara
objek – objek dari sebuah perusahaan yang menggambarkan database serta hubungan –
hubungan antar objek – objek tersebut dimana pada setiap objek terdapat atribut – atribut
yang mendefinisikan data yang dapat disimpan oleh objek tersebut.
45
Gambar 2.4 Contoh Diagram Entity Relationship
2.14 SQL (Structured Query Language)
SQL diawali pada tahun 1970-an saat IBM mengembangkan sebuah bahasa
untuk melaukan akses terhadap DBMS yang dinamakan SEQUEL (Structured English
Query Language). Bahasa awal ini kemudian berubah nama menjadi SQL. Pada
akhirnya, SQL sendiri dipersatukan dari berbagai vendor dan menjadi standard pertama
kali pada tahun 1986 di bawah organisasi ANSI (Americal National Standard Institute)
dengan nama sql-86. Standard ini kemudian mengalami beberapa kali perubahan, mulai
tahun 1989 menjadi SQL-89 dan pada tahun 1992 menjadi SQL-92. Dengan adanya
standard ini, berarti bahwa perintah-perintah standard dalam SQL tidak hanya berlaku
untuk satu vendor, tetapi berlaku secara global untuk database dari vendor lain.
Contohnya, perintah Select, secara dasar memiliki sintaks dan parameter yang sama
46
dengan perintah Select yang dijalankan di beberapa vendor, baik seperti SQL Server,
Oracle, maupun My SQL. Namun, tetap ada vendor yang memiliki parameter tambahan
yang menjadi crri khas serta keunggulan di dalamnya.
Di dalam perintah SQL secara umum dibagi menjadi tiga kategori, yaitu :
1. Data Definition Language (DDL)
Merupakan Query yang ditujukan untuk melakukan modifikasi terhadap
database maupun table. Yang termasuk di dalam kategori ini di antaranya,
perintah Create Database, Create Table, dan Alter Table.
2. Data Manipulation Language (DML)
Merupakan Query yang berfungsi untuk memanipulasikan dan memanggil
kembali data. Contoh :
SELECT ... FROM ... WHERE ...
INSERT INTO ... VALUES ...
UPDATE ... SET ... WHERE ...
DELETE FROM ... WHERE ...
3. Data Control Language (DCL)
Merupakan Query yang ditujukan untuk sekuritas dan control terhadap server
dan data. Sebagai contoh adalah perintah Grant dan Revoke.
2.15 Unified Modeling Language (UML)
2.15.1 Sejarah Unified Modeling Language
Teknik analisis berorientasi objek merupakan alat terbaik yang dapat digunakan
untuk sebuah proyek yang akan mengimplementasikan sistem yang menggunakan
47
teknologi objek untuk membangun, mengelola, dan merakit objek-objek itu menjadi
aplikasi komputer yang berguna. Pendekatan berorientasi objek dipusatkan pada sebuah
teknik yang sering disebut object modeling/ pemodelan objek (Whitten, dkk, 2004,
p408). Teknik pemodelan objek menyajikan penggunaan metodologi dan notasi diagram
yang sama sekali berbeda dengan teknik lainnya yang biasa digunakan utnuk pemodelan
data dan pemodelan proses.
Pada akhir 80-an dan awal tahun 90-an, digunakan beberapa metode berorientasi
objek yang berbeda-beda. Yang paling terkenal adalah Metode Booch dari Grady Booch,
Object Modeling Technique (OMT) dari James Rumbaugh (OMT), dan Object Oriented
Software Engineering (OOSE) dari Ivar Jacobson. Banyaknya metode dan teknik
pemodelan yang sudah ada menjadi masalah utama bagi industri pengembangan sistem
berorientasi objek. Banyaknya teknik yang digunakan membatasi kemampuan untuk
memakai model-model pada proyek lain (mengurangi reuse) dan tim pengembangan.
Konsekuensinya, teknik ini menghambat komunikasi antara anggota tim dan pengguna,
yang mengakibatkan banyak terjadi kesalahan di dalam proyek. Masalah ini dan lainnya
mendorong dilakukannya usdaha untuk mendesain bahasa pemodelan standar.
Pada tahun 1994, Grady Booch dan James Rumbaugh sepakat bergabung untuk
menggunakan metode pengembangan berorientasi objek dengan tujuan membuat standar
tunggal untuk mengembangkan sistem berorientasi objek. Ivar Jacobson bergabung pada
tahun 1995, dan mereka bertiga fokus membuat sebuah bahasa pemodelan objek standar
sebagai ganti dari pendekatan atau metode berorientasi objek standar. Berdasarkan kerja
mereka dan hasil kerja lainnya pada industri, Unified Modeling Language (UML) versi 1
dirilis pada tahun 1997.
48
UML tidak menentukan metode untuk sistem-sistem pengembangan – hanya
catatan yang saat ini telah diterima luas sebagai standar untuk pemodelan objek. Object
Management Group (OMG), badan standar industri, mengadopsi UML pada bulan
November 1997 dan terus bekerja untuk meningkatkannya berdasarkan kebutuhan
industri.
2.15.2 Definisi Unified Modeling Language
“Unified Modeling Language (UML) adalah keluarga notasi grafis,
didukung oleh satu model meta (single meta-model) yang membantu
dalam menggambarkan dan merancang sistem perangkat lunak, khususnya sistem
perangkat lunak yang dibangun dengan menggunakan object-oriented (OO)” (Fowler,
2004, p1).
Menurut Booch, dkk (2005, p13), “UML adalah bahasa untuk menulis blueprints
perangkat lunak, memvisualisasi, menentukan, membangun, dan mendokumentasikan
artifak dari sistem perangkat lunak intensif.” UML cocok untuk pemodelan sistem mulai
dari sistem informasi perusahaan untuk aplikasi berbasis web bahkan untuk real time
embedded software yang sulit sekalipun.
2.15.3 Diagram Unified Modeling Language
UML versi 2.2 memiliki 14 macam diagram, yang terbagi menjadi dua kategori,
yaitu diagram struktur (structure diagrams) dan diagram perilaku (behaviour diagrams)
[UML Superstructure Specification Version 2.2. OMG, 2009], seperti pada gambar
berikut :
49
Gambar 2.5 Pembagian Kategori Diagram UML
Dari semua jenis diagram UML, yang paling sering digunakan adalah Class
Diagram, Use case Diagram, Activity Diagram, dan Sequence Diagram.
2.15.3.1 Class Diagram
Class Diagram menunjukkan kelas dari suatu sistem, hubungan antarkelas
tersebut, dan operasi dan atribut kelas.
Notasi-notasi yang terdapat pada class diagram adalah sebagai berikut :
1. Class
Class menggambarkan sekumpulan objek yang memiliki atribut dan operasi
yang dikerjakan oleh objek tersebut.
50
2. Aggregation
Aggregation menggambarkan hubungan antara dua atau lebih objek, dimana
salah satu objek merupakan bagian dari objek lain.
3. Attribute
Attribute merupakan property dari class yang berisi tipe data yang dimiliki
oleh instance dari suatu class.
4. Operation
Operation merupakan kegiatan-kegiatan yang dilakukan oleh suatu kelas
5. Association
Association menggambarkan relasi antar-object / instance dari class. Pada
umumnya association digambarkan sebagai garis antar dua class dimana
pada salah satu ujung diletakkan tanda panah yang merupakan navigability.
Gambar 2.6 Gambar Contoh Class Diagram
51
2.15.3.2 Use case Diagram
Menurut Booch, dkk, 2005, p239, “Use case Diagram adalah pusat pemodelan
perilaku sistem, subsistem, atau kelas. Setiap use case diagram menunjukkan satu set
kasus penggunaan dan aktor, dan juga hubungan di antaranya,”
Interaksi antar aktor tidak diperlihatkan dalam use case diagram. Use case
diagram terdiri dari :
a. Use case
Sebuah use case menjelaskan aksi yang menyediakan suatu nilai yang dapat
dinilai kepada aktor dan digambar dengan bentuk elips secara horizontal.
b. Aktor
Aktor merupakan orang, organisasi, atau sistem luar yang memainkan peran
dalam satu atau lebih interaksi dengan sistem.
c. Persegi batas lingkup sistem (opsional)
Sebuah persegi digambar mengelilingi use case, yang dinamakan system
boundary box, untuk mengindikasikan lingkup dari sistem. Semua yang
berada dalam persegi menyatakan fungsi yang berada dalam lingkup yang
sistem dan semua yang diluar persegi bukan merupakan bagian dari sistem.
52
Gambar 2.7 Contoh Use Case Diagram
2.15.3.3 Activity Diagram
“Activity Diagram merupakan flowchart yang menunjukkan alur kontrol di
dalam sistem, baik yang berurutan, bercabang, atau bersamaan dari aktivitas ke
aktivitas” (Booch, dkk, 2005, p267).
o
p
t
Activ
oleh user pa
Activ
panah. Bentu
a. R
b. D
c. B
s
d. B
e. E
Pana
terjadi.
vity Diagram
ada setiap ca
vity Diagram
uk – bentuk
Rounded Rec
Diamonds m
Bars menyat
ecara bersam
Black circle m
Encircled bla
ah berada da
m memperli
ase yang ada
m dibangun
yang paling
ctangles men
menyatakan k
takan awal
maan.
menyatakan
ack circle m
ari awal hing
Gamba
ihatkan urut
pada use ca
n dari bentu
g penting ant
nyatakan akt
keputusan.
(split) atau
awal (state
enyatakan ak
gga akhir da
ar 2.8 Conto
tan aktivitas
ase diagram.
uk – bentuk
tara lain :
tivitas.
akhir (join
inisiasi) dar
khir dari dia
an menyatak
oh Activity D
s – aktivitas
k, yang dih
n) dari aktiv
ri diagram.
agram (state
kan urutan da
Diagram
s yang dilak
hubungan de
vitas yang te
final).
ari aktivitas
53
kukan
engan
erjadi
yang
54
2.15.3.4 Sequence Diagram
Sequence Diagram adalah sebuah diagram interaksi yang menekankan pada
urutan waktu pesan. Sequence diagram memperlihatkan interaksi antar objek/ kelas dan
juga pesan yang dikirim dan diterima antar objek/ kelas tersebut.
Sequence diagram mengambarkan proses – proses atau objek – objek yang
berbeda yang aktif secara simultan, digambarkan garis paralel secara vertikal (lifelines),
dan pesan yang ditukar antara mereka, digambarkan sebagai panah horisontal, sesuai
dengan urutan terjadinya.
Gambar 2.9 Contoh Sequence Diagram
55
2.16 Services
Services, yang dalam bahasa Indonesia artinya jasa, adalah tindakan atau
kegiatan yang diberikan/ ditawarkan oleh suatu pihak kepada pihak lain, dimana yang
ditawarkan tersebut adalah sesuatu yang tidak berwujud dan juga tidak mengakibatkan
kepemilikan apapun.
Beberapa karakteristik utama dari jasa :
1. Intangibility (Tidak berwujud)
Jasa mempunyai sifat tidak berwujud karena tidak bisa dindentifikasi oleh ke
lima indera manusia, seperti: dilihat, dirasa, diraba, didengar, atau dicium. Jasa
tidak berupa barang yang mempunyai wujud.
2. Inseparability (Tidak dapat dipisahkan)
Jasa tidak dapat dipisahkan dari sumbernya, apakah sumber itu merupakan orang
maupun mesin, jadi jasa tidak ada jika sumbernya tidak ada. Berbeda dengan
barang yang masih ada terlepas dari sumbernya ada atau tidak.
3. Variability (Berubah-ubah)
Jasa mempunyai sifat berubah-ubah karena jasa tergantung pada siapa yang
menyajikan, kapan, dan dimana disajikan.
4. Perishability (Daya tahan)
Jasa merupakan sesuatu yang tidak dapat disimpan dan tidak memiliki daya tahan
yang lama karena sifatnya tergantung dari fluktuasi permintaan
Jadi, Services atau jasa adalah sesuatu yang tidak berwujud secara fisik namun
dapat dirasakan oleh pihak yang menerima service tersebut. Service merupakan elemen
56
penting bagi strategi bisnis manapun, semua customer membutuhkan service dengan
kualitas tinggi (high quality service).
Service juga dapat didapatkan melalui mekanisme elektronika, seperti aplikasi
penyedia service maupun Website yang menyediakan service. Dimana Website tersebut
menyediakan jasa bagi user, seperti penyedia layanan informasi dan layanan tanya
jawab. Begitu pula dengan Binusmaya, sebagai Web resmi bagi mahasiswa dan dosen
Binus University, juga menyediakan service yang bermanfaat yang menunjang
kepentingan perkuliahan dan kehidupan kampus Binus University. Dimana service
tersebut dapat diakses dengan mudah dan cepat karena menggunakan sistem berbasis
Web.
2.17 Binusian
Binusian adalah semua orang/pihak yang pernah atau sedang terlibat di dalam
proses pengajaran, penelitian, dan pengabdian masyarakat termasuk didalamnya
karyawan yang bekerja di lingkungan lembaga pendidikan Bina Nusantara.