BAB 2 TINJAUAN PUSTAKA 2.1 Teori Umum 2.1.1 Rekayasa Perangkat Lunak Rekayasa Perangkat Lunak adalah pembuatan dan penggunaan prinsip–prinsip keahlian teknik untuk mendapatkan perangkat lunak yang ekonomis yang handal dan bekerja secara efisien pada mesin yang sesungguhnya. Rekayasa Perangkat Lunak mendirikan suatu pondasi untuk
suatu
proses
perangkat
lunak
yang
lengkap
dengan
mengindentifikasi sejumlah aktivitas kerangka kerja yang berlaku untuk semua proyek perangkat lunak, terlepas dari hal ukuran dan kompleksitas. (Pressman, 2010, p13)
2.1.2 Jaringan Komputer Menurut Lutfi Kurniawan (2012) Jaringan komputer adalah sebuah sistem yang terdiri atas komputer dan perangkat jaringan lainnya seperti: kabel, switch, HUB, router, dll yang bekerja bersama-sama untuk mencapai suatu tujuan yang sama. Tujuan dari jaringan komputer adalah: 1.
Membagi fungsi sumber daya seperti berbagi pemakaian printer, CPU, RAM, harddisk.
2.
Komunikasi: contohnya surat elektronik, instant messaging, chatting.
3.
Akses informasi: contohnya web browsing.
Agar dapat mencapai tujuan yang sama, setiap bagian dari jaringan komputer meminta dan memberikan layanan (service). Pihak yang meminta layanan disebut klien (client) dan yang memberikan layanan disebut pelayan (server). Arsitektur ini disebut dengan sistem clientserver, dan digunakan pada hampir seluruh aplikasi jaringan komputer.
5
6
2.1.2.1 Klasifikasi Jaringan Komputer Berdasarkan Cakupan Berdasarkan luas cakupannya, jaringan komputer pada umumnya dikategorikan menjadi empat ukuran yaitu Personal Area Network (PAN), Local Area Network (LAN), Metropolitan Area Network (MAN), & Wide Area Network (WAN). (Bogdan Ciubotaru, 2013, p13-22) 1.
Personal Area Network (PAN) Personal Area Netowork (PAN) menggunakan teknologi transmisi jarak pendek (1 m) dan biasanya dimaksudkan untuk melayani satu orang. Dalam hal ini, teknologi komunikasi yang digunakan untuk menghubungkan berbagai periferal, seperti printer, scanner, serta keyboard dan mouse dengan komputer.
2.
Local Area Network (LAN) Local Area Network (LAN) biasanya terdapat dalam sebuah gedung, kampus atau wilayah geografis, hingga beberapa kilometer dalam ukuran. LAN biasanya dimiliki pribadi dan tujuan utama mereka adalah untuk menghubungkan komputer dan sumber daya seperti printer dan unit penyimpanan data milik unit fungsional tunggal seperti kantor bangunan, pabrik, sekolah atau universitas. Tipikal kecepatan transmisi data berkisar antara 10 dan 100 Mbps dengan teknologi terbaru bisa mencapai kecepatan transmisi hingga 10 Gbps. Teknologi yang paling terkenal untuk LAN adalah Ethernet, Distandarisasi sebagai IEEE 802.3.
3.
Metropolitan Area Network (MAN) Metropolitan Area Network (MAN) biasanya meliputi area ukuran kota. Awalnya, MAN telah dikembangkan untuk mendistribusikan layanan televisi melalui jaringan TV kabel. Pengembangan dan peningkatan popularitas internet telah ditentukan operator untuk menyesuaikan jaringan TV kabel untuk pengiriman layanan Internet.
7 Beberapa teknologi telah digunakan untuk melaksanakan MAN. Teknologi ini termasuk Asynchronous Transfer Mode (ATM), Fiber Distributed Data Interface (FDDI), dan Switched Multimegabit Data Service (SMDS). Wide Area Network (WAN). 4.
Wide Area Network (WAN) Wide Area Network (WAN) biasanya mencakup wilayah geografis yang lebih besar seperti seluruh negeri atau bahkan benua. WAN terbesar yang dikenal saat ini adalah Internet, mencakup seluruh dunia. Namun, WAN biasanya dapat menghubungkan beberapa LAN, MAN, atau bahkan WAN lainnya,
menyediakan
infrastruktur
backbone
untuk
mengangkut data antara jaringan saling berhubungan. Secara umum, WAN terdiri dari dua elemen dasar: jalur komunikasi (yaitu, kabel tembaga, serat optik, radio link) dan elemen switching (yaitu, router). Elemen switching menghubungkan dua atau lebih saluran komunikasi. kapan saja data yang diterima oleh elemen switching pada jalur komunikasi, itu memutuskan yang melapisi data harus diteruskan dan mengirimkan pesan pada baris tertentu.
2.1.2.2 Arsitektur Jaringan Berdasarkan arsitekturnya jaringan terbagi menjadi 3 yaitu (Lutfi Kurniawan (2012)) : 1.
Client-server Yaitu
jaringan
komputer
dengan
komputer
yang
didedikasikan khusus sebagai server. Sebuah service/layanan bisa diberikan oleh sebuah komputer atau lebih. Contohnya adalah sebuah domain seperti www.detik.com yang dilayani oleh banyak komputer web server. Atau bisa juga banyak service/layanan yang diberikan oleh satu komputer.
8
2.
Peer-to-peer Yaitu jaringan komputer dimana setiap host dapat menjadi server dan juga menjadi client secara bersamaan. Contohnya dalam file sharing antar komputer di Jaringan Windows Network Neighbourhood ada 5 komputer (kita beri nama A,B,C,D dan E) yang memberi hak akses terhadap file yang dimilikinya. Pada satu saat A mengakses file share dari B bernama data_nilai.xls dan juga memberi akses file soal_uas.doc kepada C. Saat A mengakses file dari B maka A berfungsi sebagai client dan saat A memberi akses file kepada C maka A berfungsi sebagai server. Kedua fungsi itu dilakukan oleh A secara bersamaan maka jaringan seperti ini dinamakan peer to peer. Perbandingan kelebihan dan kekurangan dari arsitektur jaringan client server dan peer to peer menurut R. Khaerul Huda (2010) :
Kelebihan dan Kekurangan Client Server Kelebihan Client Server Kekurangan Client Server Memberikan keamanan lebih baik.
Membutuhkan software NOS yang mahal contoh : NT atau server Windows 2000, XP,Novell, UNIX.
Lebih
mudah
networknya
pengaturannya besar
administrasinya disentralkan.
bila Membutuhkan hardware yang lebih
karena tinggi dan mahal untuk mesin server.
Semua data dapat dibackup pada satu Membutuhkan administrator yang lokasi sentral.
profesional. Mempunyai satu titik lemah jika menggunakan satu server, data user menjadi tak ada jika server mati.
Tabel 2.1 Kelebihan dan Kekurangan Client Server
9
Kelebihan dan Kekurangan Peer to Peer Kelebihan Peer to Peer Kekurangan Peer to Peer Pelaksanaan
tidak
terlalu
mahal, Tidak cocok untuk network skala
relatif murah.
besar, administrasi menjadi tidak terkontrol.
Tidak membutuhkan software server Tiap NOS ( Network Operating System ).
user harus
dilatih
untuk
menjalankan tugas administrative.
Tidak membutuhkan administrator Keamanan kurang. network yang handal. Semua resource
mesin
yang
tidak
sharing
mempengaruhi
performa. Tabel 2.2 Kelebihan dan Kekurangan Peer to Peer 2.1.2.3 Media Transmisi Jaringan Adapun media transmisi yang digunakan dalam jaringan komputer, sebagai berikut (Adethia Pusparini (2009)) : -
Media Transmisi Nirkabel Jaringan nirkabel adalah komunikasi antar sistem komputer dan beberapa macam peralatan telekomunikasi tanpa menggunakan kabel. Jaringan nirkabel biasanya menghubungkan satu sistem komputer dengan sistem telekomunikasi yang lain dengan menggunakan beberapa macam media transmisi tanpa kabel, seperti : gelombang elektromagnetik, gelombang radio, gelombang mikro, gelombang satelit, maupun gelombang inframerah. Media transmisi dibagi menjadi 2 jenis berdasarkan ruang lingkup, sebagai berikut : •
Nirkabel jarak jauh Nirkabel jarak jauh biasa disebut dengan komunikasi dua arah, berikut contohnya : -
1G (Generasi pertama) : ponsel analog.
10 -
2G (Generasi kedua) : ponsel Digital & PDA.
-
2,5G.
-
GPRS (General Packet Service).
-
Nirkabel 3G (Generasi ketiga).
-
HIGH SPEED DOWNLINK PACKET ACCESSS. (HSDPA) disebut juga dengan teknologi 3,5G.
-
WiMax : sejauh 6 hingga 10 mil (maksimum 20 sampai 30 mil).
•
Nirkabel jarak dekat Contoh nirkabel jarak dekat yaitu : -
Local Area Network (LAN) : Wi-Fi, W-LAN.
-
Personal Area Network (PAN) : Bluetooh, infra merah, USB Nirkabel.
2.1.2.4 Model Open System Interconnection (OSI) OSI (Open System Interconnecting) mempunyai tujuh lapisan yaitu : 1.
Physical Layer Lapisan fisik disini bertujuan untuk mentransmisikan bit-bit melewati saluran komunikasi dan memastikan bahwa ketika satu sisi mengirimkan bit 1 maka sisi penerima harus mendapatkan bit 1 juga bukan 0. Protokol yang berlaku pada layer ini adalah DSL, ISDN, Ethernet, Optical transport network (OTN). Dan perangkat yang digunakan pada layer ini adalah network adapter, modem, fiber Media Converter.
2.
Data Link Layer Tugas utama dari lapisan koneksi data adalah untuk mengubah fasilitas transmisi dasar ke sebuah jalur yang tampak terlihat bebas dari transmisi yang error tanpa terdeteksi. Protokol yang berlaku pada layer ini adalah MAC Address (Media Access Control). Perangkat yang berada pada layer ini adalah hub, bridge, dan switch layer 2.
3.
Network layer
11 Tugas utama dari lapisan jaringan adalah untuk mengontrol subnet dan menentukan paket tersebut di arahkan dari sumber ke tujuan. Protokol yang bekerja pada layer ini adalah IP dan ARP (Address Resolution Protocol). Perangkat yang bekerja pada layer ini adalah router dan switch layer 3. 4.
Transport layer Fungsi dasasr dari lapisan pengirim adalah menerima data dari lapisan atas
kemudian memecahkannya
menjadi
beberapa bagian kecil jika dibutuhkan, melewatkannya melewati lapisan jaringan, dan memastikan bagian-bagian tersebut sampai tujuan dengan tepat. Protokol yang bekerja pada layer ini adalah TCP dan UDP. 5.
Session layer Lapisan sesi mengizinkan pengguna di hardware atau mesin yang berbeda untuk mengaktifkan sesi diantara mereka. Lapisan ini menawarkan berbagai macam servis. Contohnya adalah TCP.
6.
Presentation Layer Tidak seperti lapisan yang berada dibawahnya yang kebanyakan
melakukan
perpindahan
bit-bit,
lapisan
presentasi menekankan tentang sintag dan semantic dari informasi yang dikirim. Protokol yang berada dalam level ini contohnya adalah layanan Workstation (dalam windows NT) dan juga Network Shell (semacam virtual network computing (VNC) atau Remote Desktop Protocol (RDP)). 7.
Application layer Lapisan ini berisi oleh berbagai protokol yang umumnya digunakan oleh user, contohnya HTTP (Hyper text Transfer Protocol), FTP (File Transfer Protocol), SMTP (Simple mail transfer protocol), NFS (network file system). (Tanenbaum, 2011, p43 - 45)
12
2.1.2.5 Model TCP/IP Model TCP/IP mempunyai 4 lapisan yaitu : 1.
Link layer Lapisan ini mendeskripsikan koneksi seperti serial dan Ethernet klasik harus mampu memenuhi kebutuhan dari lapisan internet yang bersifat connectionless.
2.
Internet layer Fungsi dari lapisan ini adalah untuk mengizinkan user untuk menyuntik paket ke berbagai network dan membiarkan paket tersebut berjalan secara independen ke tujuannya. Protokol di layer ini sebagai contoh adalah IP ditambah dengan protokol pendukung yang disebut ICMP (internet control message protocol).
3.
Transport layer Lapisan ini di desain untuk mengizinkan entitas sejawat di sumber dan tujuan untuk membawa percakapan, sama halnya lapisan di OSI. Dua protokol end-to-end di definisikan di lapisan ini.pertama adalah TCP (Transmission control protocol) yang handal dan berorientasi koneksi. TCP melakukan komunikasi dari sumber ke tujuan untuk melakukan koneksi. Jadi ada sesi komunikasi sebelum paket di kirimkan. Kedua adalah UDP (User datagram protocol ) yang tidak handal dan kurang terhadap orientasi koneksi. UDP tidak melakukan komunikasi terlebih dahulu untuk mengirim paket dari sumber ke tujuan.
4.
Application layer Sama seperti lapisan aplikasi di model OSI, di model TCP/IP lapisan ini juga merupakan kumpulan-kumpulan protokolprotokol yang digunakan untuk berbagai macam tipe aplikasi seperti HTTP, FTP (File Transfer Protocol), dan masih banyak lagi. (Tanenbaum, 2011, p46-48)
13
2.2 Teori Khusus 2.2.1 Smartphone Smartphone adalah telepon seluler yang menawarkan kemampuan konektivitas dan komputasi yang lebih canggih melebihi fitur dasar dari sebuah telepon seluler. Smartphone dianggap sebagai komputer yang terintegrasi dalam telepon seluler yang dapat menjalankan aplikasi pada sebuah platform tertentu seperti Java ME. (Jeon, et.al. (2011))
2.2.2 Android 2.2.2.1 Pengertian Android Android merupakan sebuah sistem operasi mobile yang didasari versi modifikasi dari Linux. Awalnya dikembangkan oleh sebuah startup dengan nama yang sama yaitu Android.Inc. pada tahun 2005, dan Android dibeli oleh Google dan pengembangannya diambil alih oleh Google. Google ingin Android untuk menjadi suatu sistem operasi yang terbuka dan bebas, maka keseluruhan kode Android dapat diliris dibawah lisensi Apache open source, yang berarti pengguna Android dapat mengunduh source code secara leluasa. Selain itu produsen hardware dapat menyesuaikan eksitensi Android mereka dengan produk lain. Keuntungan utama dari mengadopsi Android adalah sistem operasi
yang
menawarkan
pendekatan
seragam
dalam
pengembangan aplikasi. Pengembang hanya perlu mengembangkan aplikasi Android dan aplikasi yang mereka buat harus dijalankan pada perangkat Android yang berbeda-beda, selama perangkat yang didukung menggunakan Android. (Wei-Meng Lee, 2011, p3)
2.2.2.2 Sistem Arsitektur Android “Android combines the ubiquity of cell phones, the excitement of open source software. The result is a mobile platform you can’t afford not to learn. Getting started developing with Android is easy.” - L.Ashwin Kumar, 2012.
14 Sistem Operasi Android dibagi menjadi lima bagian dalam empat lapisan utama, yaitu : (Wei-Meng Lee, 2011, p3-p4) a)
Linux Kernel Lapisan paling bawah pada arsitektur Android ini adalah kernel. Lapisan yang berisi semua low–level dalam perangkat driver untuk komponen hardware dari sistem operasi Android. Arsitektur Android didasari Linux 2.6 kernel yang dapat digunakan untuk mengatur keamanan, manajeman memori, manajemen proses, network stack dan driver model.
b)
Libraries Android
memiliki
sekumpulan
library
C/C++
yang
digunakan oleh berbagai komponen dalam sistem Android. Kemampuan – kemampuan ini dilihat oleh para pengembang melalui kerangka kerja aplikasi. Library memiliki semua kode
yang menyediakan
fitur utama
pada
Android.
Contohnya, library SQLite menyediakan dukungan database sehingga aplikasi dapat menggunakannya untuk penyimpanan data. Library menyediakan fungsionalitas Web-kit untuk browsing web. c)
Android Runtime Runtime Android menyediakan satu set library yang memungkinkan pengembang untuk menulis aplikasi android dengan mengunakan bahasa pemograman Java. Runtime Android
mencakup
memungkinkan
setiap
Dalvic aplikasi
Virtual untuk
Machine,
yang
berjalan
dalam
prosesnya sendiri. Dalvik Virtual Machine dirancang khusus untuk Android dan dioptimalkan untuk perangkat bertenaga baterai ponsel dengan memori terbatas dan CPU. d)
Application framework Kerangka kerja aplikasi yang ditulis dengan pemrograman java merupakan perangkat yang digunakan oleh semua aplikasi, baik aplikasi bawaan dari ponsel seperti daftar kontak dan kotak SMS, maupun aplikasi yang ditulis oleh
15 Google
ataupun
pengembangan
Android.
Android
menawarkan para pengembang yang mempunyai kemampuan untuk membangun aplikasi yang inovatif. Pengembang bebas mengambil
keuntungan
dari
hardware,
akses
lokasi
informasi, menjalankan background service, mengatur alarm, menambahkan peringkat ke status bar, dan masih banyak lagi. e)
Application Pada lapisan ini berisi sekumpulan aplikasi utama seperti : email client, program Short Message Service (SMS), kalender, peta, browser daftar kontak dan lain–lain. Semua aplikasi ditulis dengan menggunakan bahasa pemrograman Java.
Gambar 2.1 Komponen Utama Sistem Operasi Android http://www.orangkomputer.com/?m=201006
16
2.2.3 Java Java adalah sebuah bahasa pemrograman tingkat tinggi yang berfungsi penuh. Pada awalnya dikembangkan sebagai solusi untuk peralatan rumah tangga. Java dapat diintegrasikan langsung ke halaman web sebagai applet, sehingga membuat internet menjadi jauh lebih dinamis dan sebagai tempat yang menarik untuk mengumpulkan informasi. (Russell, 2001, p3-p4) Java berawal dari sebuah proyek pada tahun 1991 yang diberi kode sandi green. Tujuan dari proyek ini adalah merancang bahasa komputer untuk perangkat consumer seperti cable TV box. Karena perangkat tersebut tidak mempunyai banyak memori dan dikembangkan oleh banyak perusahaan yang berbeda–beda, maka bahasa yang akan digunakan harus kecil dan multiplatform. (Charibaldi, 2010, p1) 2.2.4 PHP 2.2.4.1 Pengertian PHP PHP adalah bahasa scripting pada bagian server yang dirancang spesifik untuk web. PHP dapat ditambahkan didalam halaman HTML sehingga perintah PHP yang kita berikan dapat dieksekusi dan dijalankan setiap kali seseorang mengunjungi halaman. PHP bersifat open source yang berarti setiap orang mempunyai akses kedalam source codenya dan dapat mengunakan, mengubah dan menyebarluaskannya tanpa biaya. (Welling & Thomson, 2009, p4) PHP banyak dipakai untuk pemograman situs web secara dinamis. Ini tersedia untuk sebagian besar system operasi dan server web, dan dapat mengakases database yang paling umum termasuk MySQL. (Oracle,2014). PHP dapat berjalan pada semua jenis system operasi, antara lain pada Linux dan varian Unix (HP-UX, Solaris dan OpenBSD), Ms Windows, Mac dan masih banyak lagi. Selain itu PHP juga dapat berjalan pada beberapa jenis web-server antara lain Apache, Microsoft IIS, personal web-server, Netscape dan Iplanet Server, Caudium, Xitami, Omnihttpd, dan masih banyak lagi.
17 PHP juga banyak mendukung database populer yang sering digunakan dalam beberapa web-server, namun MySQL menjadi pilihan utama. MySQL adalah sistem database yang paling populer karena bersifat Open Source. MySQL memiliki sistem Database yang cepat, handal dan mudah digunakan.
2.2.4.2 Kelebihan dan Kekurangan PHP Banyak sekali kelebihan yang dimiliki PHP dibandingkan dengan
bahasa
pemrograman
yang
lain,
Diantaranya
:
(Oracle,2014) 1.
Bisa membuat web menjadi Dinamis.
2.
PHP bersifat Open-source yang berarti dapat digunakan oleh siapa saja secara gratis.
3.
Program yang dibuat dengan PHP bisa dijalankan oleh semua sistem operasi karena PHP berjalan secara web base yang artinya semua sistem operasi bahkan telepon selular yang mempunyai web browser dapat menggunakan program PHP.
4.
Aplikasi PHP lebih cepat dibandingkan dengan ASP maupun Java.
5.
Mendukung banyak paket database seperti MySQL, Oracle, PostgrSQL.
6.
Bahasa pemrograman PHP tidak memerlukan kompilasi dalam penggunaannya.
7.
Banyak web-server yang mendukung PHP seperti Apache, Lighttpd, dan IIS.
8.
Pengembangan
Aplikasi
PHP
mudah
karena
banyak
dokumentasi, referensi & developer yang membantu dalam pengembangannya. 9.
Banyak Aplikasi & Program PHP yang gratis & siap pakai seperti WordPress, PrestaShop, dan lain-lain.
18 Selain kelebihan PHP, PHP juga mempunyai kekurangan, diantaranya : 1.
Jika tidak di encoding, maka kode PHP dapat dibaca semua orang & untuk mengencodingnya dibutuhkan tool dari Zend yang mahal sekali biayanya.
2.
PHP memiliki kelemahan dalam keamanan. Jadi Programmer harus jeli & berhati-hati dalam melakukan pemrograman & Konfigurasi PHP.
2.2.5 MySQL 2.2.5.1 Pengertian MySQL MySQL adalah sebuah Relational Database Management System (RDBMS) yang cepat dan kuat, yang memungkinkan untuk menyimpan, mencari, mengurutkan dan mengambil data. Server MySQL mengontrol akses kedalam data, dan memungkinkan beberapa pengembang untuk mengerjakannya secara bersamasama, memberikan hak akses yang cepat dan memastikan hanya orang-orang yang mempunyai wewenang yang mempunyai akses kedalam database. (Welling & Thomson, 2009, p3) Keunggulan dari MySQL dibandingkan database yang lain adalah (STROE, 2011) : 1.
Tidak ada biaya lisensi.
2.
Produk ini open-source, sehingga keterlibatan masyarakat membuat kemajuan perkembangan menjadi stabil.
3.
Fungsionalitas mirip dengan sistem database lain.
4.
Perusahaan spesialiasi memberikan dukungan default untuk sistem database. Server database seperti Oracle, MySQL Oracle, SQL Server,
PostgreSQL atau IBM DB2. Server ini menangani penyimpanan dan managemen data, dengan penanganan yang lebih baik. Sistem database harus merespon lebih cepat kepada permintaan, mengelola dan menyimpan data dengan cara yang lebih efisien, hal ini dapat berarti pemeriksaan data harus selesai dalam kurung waktu yang dapat diterima.
19 Bahasa pemrograman seperti PHP (Hypertext Prepocessor), Java, asp.NET, C#, dan lain-lain. Bahasa pemrograman yang didukung di server sudah diimplementasi secara langsung pada produk software yang lain, dengan hubungan pekerjaan, baik yang berkomitmen maupun tidak. Seperti C#, seperti komponen Microsoft.Net dioptimalisasi untuk bekerja dengan server Microsoft Web Internet Information Services (IIS), sama efektifnya dengan Hypertext Preprocessor (PHP) yang bekerja dengan web server Apache. MySQL dapat bekerja pada lebih dari 20 sistem operasi seperti Windows atau Linux. Kinerja, skalabilitas dan sistem keamanan telah membuat situs terbesar, pada kondisi popularitas dan lalu lintas penyimpanan di database, yang menggunakan solusi ini. Diantara para pelanggan yang menggunakan MySQL sebagai sistem
database
termasuk
platform
individual
seperti
FaceBook.com, NetLog.com atau Big Fish Games
2.2.5.2 MySQL Based Solution Perbedaan antara MySQL dengan sistem database yang lain adalah minimal, yang artinya fungsi dan kinerja sama dengan beberapa pengecualian. Keuntungan utama adalah tentang biaya; MySQL didistribusikan dengan GNU General Public License (GPL), yang artinya tidak memerlukan biaya. Dengan memilih platform berdasarkan sistem operasi Linux dan menggunakan database MySQL, tingkat keuntungan akan meningkat.
2.2.6 CSS 2.2.6.1 Pengertian CSS CSS (Cascading Style Sheet) digunakan web desainer untuk memisahkan model tampilan suatu halaman web dari informasi pada halaman web tersebut. CSS dapat juga digunakan untuk mengubah warna dari gambar pada halaman, memberikan warna latar dan garis tepi, mengubah tampilan visual dari elemen, serta mengatur seluruh posisi dari halaman. Sebagai tambahan, CSS membuat HTML terlihat lebih simpel karena seluruh format desain disimpan pada CSS. (Harris, 2011, p159)
20
2.2.7 User Interface 2.2.7.1 Eight Golden Rules Dalam pembuatan web harus selalu memperhatikan User Interface. Ada 8 peraturan dalam merancang User Interface yang dikenal dengan nama 8 Golden Rules, yaitu : (Shneiderman & Plaisant, 2010) 1.
Mempertahankan konsistensi : konsistensi pada setiap komponen yang dibuat harus selalu diterapkan pada setiap situasi.
2.
Dapat digunakan secara universal : menambahkan fitur yang dapat digunakan bahkan oleh orang awam.
3.
Memberikan informasi timbal balik : setiap tindakan yang dilakukan oleh user harus ada respon balik dari sistem.
4.
Merancang sistem pemberitahuan : setiap urutan dari sebuah tindakan baik dari awal, pertengahan dan akhir harus mendapat informasi atau pemberitahuan yang jelas.
5.
Mencegah error : sistem akan mengeluarkan petunjuk untuk user apabila user melakukan kesalahan.
6.
Memudahkan kembali ke tindakan sebelumnya : interface harus menyediakan tombol untuk kembali ke langkah sebelumnya.
7.
Mendukung
pengendali
internal
:
sistem
harus
menunjukkan bahwa user yang memegang kendali atas sistem, bukan sebaliknya. 8.
Mengurangi penggunaan memori jangka pendek : sistem tidak bole meminta user untuk mengingat kode yang akan digunakan pada interface berikutnya.
21
2.3 Jurnal / State Of The Art 2.3.1 Pengembangan Sistem Bagi Pembimbing Akademik Untuk Memantau Perkembangan Mahasiswa Dosen Pembimbing Akademis (PA) merupakan dosen yang ditugaskan untuk membimbing mahasiswa agar dapat berkuliah dengan baik. Banyak diantara para dosen PA belum melakukan perannya secara ideal. Pada umumnya mereka hanya memberikan pengesahan Kartu Rencana Studi, hanya sekedar mengesahkan beberapa jumlah Satuan Kredit Semester yang boleh diambil dan mata kuliah mana yang boleh diambil atas dasar Indeks Prestasi yang dicapai sebelumnya, mengesahkan beberapa jumlah SKS yang telah dicapai guna persyaratan akademis. Penelitian ini bertujuan untuk mengetahui dan merancang sistem informasi yang dapat memudahkan dosen PA dalam melayani dan memantau perkembangan akademik dan kepribadian dari mahasiswa bimbingannya sehingga rekam jejak mahasiswa dapat dengan cepat ditelusuri. Sistem dibuat dengan menggunakan Visual Basic dengan access sebagai basis datanya. Dalam sistem ini sudah terdapat fasilitas pengambilan mata kuliah dengan validasi mata kuliah prasyarat. Dosen PA dapat langsung mengetahui total sks yang telah ditempuh dan indeks prestasi komulatif mahasiswa. Selain mencatat data bimbingan akademik, sistem ini juga mencatat pengambilan mata kuliah akhir berupa Kerja Praktek dan skripsi atau Tugas Akhir. Laporan yang dihasilkan dari sistem ini antara lain Kartu Rencana Studi, transkrip nilai, rekaman akademik, laporan bimbingan dan daftar dosen PA maupun mahasiswa. (Setyadi, 2014) 2.3.2 Rancang Bangun Sistem Monitoring Perkuliahan Dengan Metode Pembelajaran Sstudent Centered Learning (SCL) Di Jurusan Sistem Informasi ITS Informasi merupakan faktor penting yang menentukan kesuksesan sebuah organisasi. Ketepatan dan ketersediaan informasi dibutuhkan organisasi untuk mendukung proses bisnis utama maupun proses bisnis pendukung. Maka dari itu, informasi perlu dikelola dengan baik agar
22 dapat menyediakan informasi yang tepat di saat yang dibutuhkan untuk menjamin keberlangsungan kehidupan sebuah organisasi. Dewasa ini, pengelolaan informasi organisasi banyak dilakukan melalui sebuah sistem informasi. Sistem informasi dapat memberikan informasi masa lalu, sekarang dan gambaran masa depan baik dari dalam maupun luar organisasi. Informasi yang dihasilkan sebuah sistem informasi lebih cepat dan tepat, sehingga organisasi dapat memanfaatkan pada saat membutuhkan.
Jurusan Sistem Informasi (JSI) yang
merupakan salah satu organisasi jurusan yang terdapat di Institut Teknologi
Sepuluh
Nopember
(ITS)
memiliki
fokus
untuk
mengembangkan kemampuan siswa dengan metode pembelajaran Student
Centered
Learning
(SCL).
SCL
merupakan
metode
pengembangan kemampuan siswa yang berorientasi pada kebutuhan siswa dan potensi yang harus siswa miliki. Proses bisnis utama JSI merupakan Proses bisnis perkuliahan. Proses ini perlu dimonitoring agar pelaksanaan perkuliahan berjalan dengan baik dan sesuai dengan metode pembelajaran SCL. Hal yang dicatat pada monitoring perkuliahan antara lain : kesesuaian perkulihaan dengan rencana, kehadiran dosen maupun mahasiswa, keaktifan mahasiswa, penilaian tugas mahasiswa dan lainnya. Dari hasil monitoring tersebut dapat digunakan sebagai bahan evaluasi baik bagi mahasiswa ataupun dosen sebagai bahan perbaikan kedepannya. Agar dapat melaksanaakan proses monitoring perkuliahan dengan
baik,
dibutuhkan
sebuah
sistem
informasi
monitoring
perkuliahan. Saat ini, Jurusan Sistem Informasi sudah memiliki sistem informasi yang ditujukan untuk membantu proses bisnis monitoring perkuliahan, namun sistem informasi tersebut tidak dapat memenuhi kebutuhan bisnis organisasi saat ini yang berubah. Berubahnya sistem pembelajaran JSI dari metode pembelajaran TCL (Teacher Centered Learning) ke metode pembelajaran SCL berdampak pada berubahnya prosedur perkuliahan JSI, sehingga sistem informasi monitoring perkuliahan yang telah dimiliki tidak dapat mendukung proses dengan optimal. Sistem monitoring perkuliahan yang ada masih belum mengacu pada sistem pembelajaran SCL dan masih belum sepenuhnya mendukung monitoring perkuliahan karena masih terdapat beberapa error secara
23 teknis. Dibutuhkan aplikasi sebuah sistem informasi baru yang dapat memenuhi kebutuhan monitoring perkuliahan yang dibutuhkan JSI saat ini. Dengan sistem informasi monitoring perkuliahan yang baru, kekurangan yang terdapat pada sistem monitoring perkuliahan yang ada diharapkan dapat diperbaiki dan dapat mendukung pemenuhan kebutuhan bisnis JSI. (Wibowo, 2010) 2.3.3 GISMO: a Graphical Interactive Student Monitoring Tool for Course Management Systems Course Management System (CMS) adalah sebuah tipe aplikasi perangkat lunak yang memungkinkan instruktur untuk mengirimkan informasi ke murid, membuat materi pelajaran, mempersiapkan tugas dan ujian, melakukan diskusi dan mengatur kelas jarak jauh melalui internet. CMS telah mencapai popularitas yang tinggi di universitas di berbagai belahan dunia untuk kelebihan menyediakan edukasi jarak jauh berbasis web dengan fleksibilitas dan kenyamanan dari komunikasi client – server di web. Penelitian edukasi menunjukan sejumlah masalah mengunakan CMS di pembelajaran jarak jauh, seperti murid akan merasa terisolasi karena kurangnya kontak dengan guru dan teman sekelas, kehilangan motivasi dan merasa sulit untuk berhasil dalam pelajaran tanpa bantuan institusional. Literatur penelitian edukasi juga menunjukan bahwa memantau pembelajaran murid juga sebuah komponen penting untuk pendidikan yang mempunyai kualitas. Kami mempertimbangkan Moodle Software untuk digunakan dalam masalah ini, database internal Moodle menyimpan log data dari aktifitas di sebuah pelajrana dan mempunyai fitur monitor yang bernama activity report, yang memungkinkan instruktur untuk melihat beberapa data statistik, seperti jumlah akses murid kepada setiap sumber, atau jumlah murid yang ikut dalam pelajaran. Instruktur dapat mengunakan informasi ini untuk memonitor aktifitas murid dan mengidentifikasi potensi masalah. Tetapi, informasi ini biasa disediakan dalam format tabel, dan sering sulit dimengerti. Dalam projek ini, kami mengunakan Information Visualisation (IV), teknik untuk menampilkan secara grafis data multidimensional berjumlah besar yang dikumpulkan oleh Moodle’s activity report tool. Kami mengimplementasikan sebuah monitoring tool grafis berdasarkan
24 pengalaman kami dengan penelitian CourseVis. Tool yang mengunakan teknik IV (Information Visualisation) untuk membuat representasi grafik yang dapat digunakan oleh instruktur, yang dapat membantu mereka untuk mendapatkan sebuah pengertian tentang murid mereka dan menjadi sadar tentang apa yang terjadi di kelas jarang jauh. (Mazza, 2004)