5 BAB 2
TINJAUAN PUSTAKA
2.1.Internet
Setiyawan & Anwar(2010, p. 03)mengatakan bahwa Internet (Interconnection Networking) merupakan kumpulan dari jaringan global antar komputer di seluruh dunia yang terhubung satu dengan yang lainnya.Achmad Nazrul (2010, p. 4) juga mengatakan bahwa internet merupakan hubungan antar berbagai jenis komputer dan jaringan di dunia yang berbeda sistem operasi maupun aplikasinya dimana hubungan tersebut memanfaatkan kemajuan media komunikasi (telepon dan satelit) yang menggunakan protokol standar dalam berkomunikasi yaitu protokol TCP/IP.
I
nternet ini terbuka untuk umum, sehingga membuat penggunanya dapat bertukar informasi. Pertukaran informasi / lintas data bisa dilakukan jika masing-masing komputer memiliki TCP/IP yang tersambung oleh internet. Untuk membedakan komputer satu dengan yang lainnya, maka masing-masing komputer diberikan alamat IP yang beberbeda agar bisa saling berkomunikasi.Alamat IP (Internet Protocol Address atau sering disingkat IP) adalah deretan angka biner antara 32 bit sampai 128 bit yang dipakai sebagai alamat identifikasi untuk tiap komputer host dalam jaringan internet. Panjang dari angka ini adalah 32 bit (untuk IPv4 atau IP versi 4), dan 128 bit (untuk IPv6 atau IP versi 6) yang menunjukkan alamat dari komputer tersebut pada jaringan internet berbasis TCP/IP.Dengan adanya internet ini, manusia makin di permudah dalam melakukan segala hal, baik berkomunikasi, mencari / menemukan informasi dan sebagainya.2.2. World Wide Web
Abadi(2014)mengatakan bahwa World Wide Web yang biasa dikenal dengan WWW ini merupakan bagian dari Internet yang berfungsi sebagai tanda pengenal dan penyedia data / informasi sebuah sistem dengan teknologi hypertext. Dengan hypertext ini, pengguna dapat melompat ke halaman website dari dokumen satu ke dokumen lainnya. Dokumen-dokumen atas informasi ini disimpan dan dibuat dengat format HTML (Hypertext Markup Language). Dokumen ini diletakkan dalam web server dan dapat di akses oleh pengguna menggunakan aplikasi web browser.Dengan
World Wide Web ini, pengguna dapat menikmati informasi berupa teks, suara, video dan animasi.
2.3. Unified Modeling Language (UML)
Whitten & Bentley(2007, p. 371) mengatakan bahwa Unified Modeling
Language (UML) adalah sekumpulan aturan yang digunakan untuk
menspesifikasikan atau mendeskripsikan sebuah sistem perangkat lunak berdasarkan obyek.UML memiliki beberapa jenis diantaranya adalah use case diagram dan activity diagram.
2.3.1. Use Case Diagram
Whitten& Bentley (2007, p. 246) mengatakan bahwa Use case diagram adalah diagram UML yang berguna untuk memberikan penjelasan mengenai fungsi suatu sistem yang sedang dikembangkan kepada user menggunakan istilah-istilah yang mudah dimengerti (bukan merupakan istilah yang hanya dimengerti oleh developer). Use case diagram memberikan representasi grafis mengenai urutan aktivitas berupa interaksi yang terjadi antara user (didalam use case diagram disebut dengan Actor) dan sistem serta tujuan dari penggunaan sistem tersebut.
Di dalam use case diagram, fungsi-fungsi dari sistem dideskripsikan menggunakan alat bernama use case. Actor adalah user yang melakukan interaksi dengan sistem, sedangkan jenis-jenis interaksi yang dilakukan oleh Actor terhadap use case disebut relationship. Terdapat beberapa macam hubungan yang digunakan di dalam Use case diagram, yaitu:
1. Association
Association menggambarkan hubungan antara Actor dan sebuah use case. Association yang memiliki tanda panah mengarah pada sebuah use case menunjukkan bahwa interaksi dinisiasikan oleh actor. Association yang tidak memiliki tanda panah menunjukkan adanya interaksi antara use case dengan external server atau actor penerima. Association dapat bersifat dua arah atau satu arah.
7 Gambar 2.1.1 Contoh Penggunaan Association Pada Use Case
2. Extends
Extends menggambarkan use case yang bersifat kompleks agar menjadi lebih sederhana dan mudah dimengerti dengan membaginya ke dalam tahap-tahap.
Gambar 2.1.2 Contoh Penggunaan Extends Pada Use Case
3. Uses (atau includes)
Uses (atau includes) menciptakan abstract use case, yaitu bentuk generalisasi dari beberapa tahap use case yang memiliki kemiripan. Abstract use case dibuat agar mengurangi redundansi pada use case diagram, dan dapat digunakan satu atau lebih use case yang membutuhkan fungsionalitasnya.
Gambar 2.1.3 Contoh Penggunaan Include Pada Use Case
4. Depends On
Depends On menggambarkan adanya ketergantungan antara satu use case dengan use case lainnya sehingga sebuah aktivitas hanya bisa dilakukan apabila aktivitas sebelumnya sudah berjalan.
Gambar 2.1.4 Contoh Penggunaan Depends On pada Use Case
5. Inheritance
Inheritance digunakan ketika terdapat dua atau lebih actor yang melakukan inisiasi terhadap use case yang sama. Dengan inheritance, diciptakan sebuah abstract actor yang dapat melakukan use case tersebut (bentuk generalisasi dari actor-actor yang ada).
Gambar 2.1.6 Contoh
2.3.2. Use Case Narrative Whitten & Bentley
merupakan deskripsi dalam bentuk teks dari dan bagaimana
dengan sistem dalam menyelesaikan sebuah tugas. Ketika sedang mempersiapkan untuk membuat usecase
Gambar 2.1. Bagian-bagian dari High
1. Authoradalah nama case.
2. Dateadalah tanggal 3. Versionadalah versi dari
Gambar 2.1.6 Contoh Use case diagram
Use Case Narrative
Whitten & Bentley(2007, p. 246)mengatakan bahwa UseCaseNarrative merupakan deskripsi dalam bentuk teks dari dan bagaimana user akan berinteraksi dengan sistem dalam menyelesaikan sebuah tugas. Ketika sedang mempersiapkan
usecase agar lebih mudah dalam memahami events dari sistem.
Gambar 2.1.7 Contoh Use Case Narrative
High-level Use Case Narrative adalah sebagai berikut: adalah nama-nama individu yang berkontribusi didalam penulisan
adalah tanggal use case terakhir kali dimodifikasi. adalah versi dari use case.
9
UseCaseNarrative akan berinteraksi dengan sistem dalam menyelesaikan sebuah tugas. Ketika sedang mempersiapkan
dari sistem.
adalah sebagai berikut:
4. Use-case name adalah nama yang merepresentasikan tujuan dari use case tersebut, harus dimulai dengan kata kerja.
5. Use-case typeadalah jenis use case yang digunakan. Business requirement use-case memiliki fokus pada visi strategis dan tujuan dari banyak stakeholders. Jenis use case ini memberikan deskripsi penjelasan secara umum mengenai masalah dan cakupannya, tetapi tidak termasuk rincian yang harus dikomunikasikan kepada developer mengenai apa yang harus dilakukan oleh sistem.
6. Use-case IDadalah pengidentifikasi unik dari sebuah use caseyang tujuannya untuk pengelompokkan usecase.
7. Priorityadalah tingkat prioritas dari sebuah use case yang menunjukkan pentingnya fungsi use case tersebut di dalam sistem.
8. Sourceadalah yang mendefinisikan entitas yang memicu pembuatan use case. Dapat berupa kebutuhan, dokumen, atau stakeholder.
9. Primary business actoradalah stakeholder yang secara utama diuntungkan oleh eksekusi use case dengan menerima suatu nilai yang terukur.
10. Other participating actorsadalah actorlain di dalam use case yang berpartisipasi dan membantu terwujudnya tujuan dari use case yang ada.
11. Interested stakeholder(s)adalah seseorang selain actor yang memiliki ketertarikan pada tujuan dari use case.
12. Descriptionadalah deskripsi singkat yang terdiri dari beberapa kalimat yang menjelaskan tujuan dari use case dan aktivitas-aktivitasnya.
Gambar 2.1. Setiap high-level use case event yang typical dan
demi langkah pelaksanaan
beragam kondisi yang terjadi di dalam
Gambar 2.1.8 Contoh Use Case Narrative
level use case dilakukan expand untuk mencakupi rincian dan alternate. Typical course of events adalah deskripsi langkah demi langkah pelaksanaan use case, sedangkan alternate course of events
yang terjadi di dalam use case.
11
untuk mencakupi rincian event-adalah deskripsi langkah alternate course of events berisi
Berikut adalah konten tambahan dari sebuah ekspansi high-level use case: 1. Preconditionadalah batasan dari kondisi/status sistem sebelum use case
dapat dieksekusi.
2. Triggeradalah event yang menyebabkan eksekusi sebuah use case. 3. Typical courseof eventsadalah urutan biasa dari aktivitas yang
dilakukan aktor dan sistem untuk mencapai tujuan dari use case.
4. Alternate coursesadalah apabila terdapat pengecualian atau variasi dari typical course yang terjadi.
5. Conclusionadalah spesifikasi saat use case berhasil dieksekusi, saat primary actor menerima suatu nilai yang terukur.
6. Postconditionadalah batasan dari kondisi/status sebuah sistem setelah use case berhasil dieksekusi.
7. Business rulesmenspesifikasikan aturan dan prosedur bisnis di dalam sistem yang baru.
8. Implementationconstraintsandspecificationsmenspesifikasikan
kebutuhan yang bersifat nonfungsional yang dapat mempengaruhi realisasi use case, dapat berguna dalam perencanaan arsitektur dan pencakupan.
9. Assumptionsadalah semua asumsi yang dibuat oleh creator saat mendokumentasikan use case.
10. Open issuesadalah pertanyaan atau masalah yang harusdiselesaikan atau diteliti sebelum use case disetujui.
2.3.3. Activity Diagram
Whitten & Bentley (2007, p. 391) mengatakan bahwa Activity Diagram digunakan untuk menggambarkan alur urutan yang ada pada sebuah sistem dan menjelaskan alur dari sebuah use case. Terdapat beberapa elemen di dalam sebuah activity diagram, yaitu:
Tabel 2.1.1 Tabel Elemen Activity Diagram
Nama Simbol Deskripsi
Initial Mode
Lingkaran hitam yang merepresentasikan awal sebuah proses.
13
Nama Simbol Deskripsi
Activity
Simbol yang merepresentasikan langkah-langkah individual di dalam activity diagram.
Flow
Simbol berupa tanda panah yang menunjukkan alur perpindahan dari satu aktivitas ke aktivitas lainya.
Decision dan Merge
Simbol yang sama digunakan untuk dua fungsi kondisional yang berbeda, Decision dan Merge.Decision mengindikasikan percabangan karena adanya pemilihan aktivitas dengan alur berbeda. Merge mengindikasikan adanya penggabungan aktivitas untuk kembali ke jalur yang sama setelah sebelumnya dipisahkan oleh sebuah decision.
Fork dan Join
Simbol yang sama dapat diasosiasikan dengan proses paralel (dua arah). Fork menggambarkan dua aktivitas yang akan berjalan secara paralel. Join menggambarkan berakhirnya proses yang berjalan secara paralel (dua arah)
Activity Final
Simbol ini menunjukkan akhir dari proses pada sebuah activity diagram.
Gambar 2.1.9 Contoh Activity Diagram
2.4.Pemrograman Web 2.4.1. HTML
Shannon(2012) mengatakan bahwa HTML (HyperText Markup Language ) adalah sebuah bahasa pemrograman yang dirancang untuk membuat sebuah website. Website yang dibuat menggunakan HTML tersebut dapat dilihat oleh orang lain yang terhubung dengan internet.
HTML menggunakan berbagai macam tags dalam penulisan code. Dalam penulisan tag akan menggunakan kurung sudut (<>) dibagian awal dan akhir suatu text. Tag dalam HTML pada umumnya dituliskan secara berpasangan seperti <a></a>.
15 2.4.2. CSS
Roberts(2014) mengatakan bahwa CSS (Cascading Style Sheet) merupakan bahasa yang digunakan untuk mengatur gaya atau tampilan dari sebuah web seperti dalam memberi warna, mengubah ukuran ataupun gaya sebuah tulisan. Pada dasarnya CSS digunakan bersama dengan HTML untuk membuat sebuah website, karena CSS memberikan pengaturan tampilan yang jauh lebih baik dibanding dengan hanya menggunakan HTML saja.
2.5.MVC (Model View Controller)
Rouse(2011) mengatakan bahwa MVC merupakan sebuah metode atau desain untuk menghubungkan user interface dengan model data pokok secara lebih efisien. Pola MVC ini banyak digunakan dalam pengembangan program yang menggunakan bahasa pemrograman seperti JAVA, C dan C++.
MVC memproses tiga komponen utama untuk digunakan dalam pengembangan suatu software,yaitu :
• Model, yang mana mewakili struktur logika sebuah data dalam sebuah software.
• View, merupakan koleksi dari kelas yang menampilkan elemen-elemen dari user interface.
• Controller, menampilkan kelas yang menghubungkan antara model dengan view dan juga membantu komonikasi dari kedua kelas tersebut.
2.6.Software Development Life Cycle (Agile Development : Scrum)
Andgaa(2013) mengatakan bahwaAgile merupakan adalah jenis pegembangan sistem jangka pendek yang memerlukan adaptasi cepat dan pengembang terhadap perubahan dalam bentuk apapun. Dalam Agile Software Development interaksi dan personel lebih penting dari pada proses dan alat, software yang berfungsi lebih penting daripada dokumentasi yang lengkap, kolaborasi dengan klien lebih penting dari pada negosiasi kontrak, dan sikap tanggap terhadap perubahan lebih penting daripada mengikuti rencana. Agile juga dapat diartikan sebagai sekelompok metodologi pengembangan software yang didasarkan pada prinsip-prinsip yang sama atau pengembangan sistem jangka pendek yang memerlukan adaptasi cepat dari pengembang terhadap perubahan dalam bentuk
apapun. Menurut AgileAlliance, ada 12 prinsip yang mendorong keberhasilan dalam penerapan AgileSoftwareDevelopment, yaitu:
• Kepuasan klien adalah prioritas utama dengan menghasilkan produk lebih
awal dan terus menerus.
• Menerima perubahan kebutuhan, sekalipun diakhir pengembangan.
• Penyerahan hasil/software dalam hitungan waktu beberapa minggu sampai
beberapa bulan.
• Pihak bisnis dan pengembang harus bekerja sama setiap hari selama
pengembangan berjalan.
• Membangun proyek dilingkungan orang-orang yang bermotivasi tinggi yang
bekerja dalam lingkungan yang mendukun dan yang dipercaya untuk dapat menyelesaikan proyek.
• Komunikasi dengan berhadapan langsung adalah komunikasi yang efektif
dan efisien
• Software yang berfungsi adalah ukuran utama dari kemajuan proyek
• Dukungan yang stabil dari sponsor, pembangun, dan pengguna diperlukan
untuk menjaga perkembangan yang berkesinambungan
• Perhatian kepada kehebatan teknis dan desain yang bagus meningkatkan sifat
agile
• Kesederhanaan penting
• Arsitektur, kebutuhan dan desain yang bagus muncuk dari tim yang mengatur
dirinya sendiri
• Secara periodik tim evaluasi diri dan mencari cara untuk lebih efektif dan segera melakukannya.
Kelebihan dari AgileSoftwareDevelopment yaitu:
• Meningkatkan kepuasan kepada klien • Pembangunan system dibuat lebih cepat
• Mengurangi resiko kegagalan implementasi software dari segi non-teknis • Jika pada saat pembangunan sistem terjadi kegagalan, kerugian dar segi
materi relative kecil.
Terdapat beberapa model proses yang terdapat pada AgileSoftwareDevelopment, salah satunya adalah Scrum. Schwaber & Sutherland(2010, p. 27)mengatakan bahwa Scrum adalah sebuah kerangka kerja untuk mengembangkan dan mengelola produk kompleks.Made Krisnanda(2014, p. 149) juga mengatakan bahwa kerangka kerja
17 Scrum, adalah jenis baru dari metodologi Agile yang diharapkan dapat meningkatkan kecepatan dan fleksibilitas dalam pengambangan perangkat lunak.Scrumdapat digunakan untuk menyelesaikan permasalahan kompleks yang senantiasa berubah, dimana pada saat bersamaan menghasilkan produk dengan nilai setinggi mungkin secara kreatif dan produktif. Scrum bukan menrupakan sebuah proses ataupun teknik untuk mengembangkan produk; daripada itu, ini adalah sebuah kerangka kerja dimana di dalamnya dapat dimasukkan beragam proses dan teknik. Scrumakan mengekspos pergerakan efektifitas manajemen produk dan praktik pengembangan yang sedang dijalani, dan hal ini akan membantu dalam melakukan peningkatan. Scrum didasari oleh teori kontrol proses empiris atau disebut dengan empirisme.
Scrum menggunakan pendekatan berkala (iterative) dan bertahap (incremental) untuk meningkatkan prediktabilitas dan mengendalikan resiko. Tim Scrum terdiri dari Product Owner, Tim Pengembang, dan ScrumMaster.Tim Scrum mengatur diri mereka sendiri dan berfungsi antar-lintas. Tim yang mengatur dirinya sendiri dengan menentukan caraterbaik untuk menyelesaikan pekerjaannya, tanpa diatur oleh pihak lain yang berada di luar anggota tim. Tim yang befungsi antar-lintas memiliki semua kompetensi yang dibutuhkan untuk menyelesaikan pekerjaan, tanpa mengandalkan pihak lain yang berada di luar anggota tim. Model tim di dalam Scrum dirancang sedemikian rupa untuk mengotomatisasi fleksibilitas, kreatifitas, dan produktifitas. Tim Scrum menghantarkan produk secara berkala dan bertahap untuk memperbesar kesempatan mendapatkan masukan.Penghantaran secara bertahap dari sebuah produk yang "Selesai", memastikan produk yang berpotensi dapat digunakan, selalu siap.
Aktifitas wajib dalam Scrum dibuat untuk menciptakan sebuah kesinambungan dan mengurangi adanya aktifitas lain yang tidak tercantum di dalam Scrum. Setiap aktifitas di dalam Scrum memiliki batasan waktu, yang artinya selalu memiliki durasi maksimum.Setiap aktifitas yang terdapat dalam Scrum berkesempatan untuk meninjau dan merubah sesuatu.Aktifitas dalam Scrum dirancang secara khusus untuk menciptakan transparansi dan peninjauan sampai ke tingkatan kritis.Scrum memiliki tiga kelompok fase, berikut merupakan kelompok dari fase Scrum :
a. Perencanaan (Planning)
Perencanaan dibagi berdasarkan jenis pengembangan produk.Apabila produk yang dikembangkan merupakan sebuah sistem yang baru, maka pada fase ini dilakukan konseptualisasi dan analisis.Sedangkan apabila produk yang dikembangkan merupakan sistem yang telah ada, maka pada fase ini hanya dilakukan analisis.
b. Arsitektur
Merancang daftar backlog yang akan diimplementasikan. Pada fase ini dilakukan modifikasi rancangan sistem dan rancangan pada level yang lebih tinggi seperti tampilan.
2. Game
Pada fase ini terdapat Development Sprints, yaitu pengembangan dari fungsionalitas yang baru, dengan memperhatikan variabel waktu, permintaan, kualitas, harga, dan kompetisi. Interaksi dari variabel tersebut akan mendefinisikan akhir dari fase ini. Terdapat banyak Sprint yang dilakukan pada fase ini. Berikut aktifitas-aktifitas yang dilakukan dalam metode Sprint :
a. Product backlog
Proyek yang menggunakan metode Scrum didasari oleh sebuah visi dari produk yang dibuatoleh Product Owner, dan dituliskan ke dalam Product backlog. Product backlog memuat daftar dari poin yang akan dibuat oleh tim yang didasari oleh prioritas kebutuhan yang dinilai berdasarkan kebutuhan customer. Product backlog disusun disepanjang waktu pengerjaan proyek, dengan penambahan, pengurangan, dan perubahan prioritas yang berkesinambungan.
b. Sprint
Scrum menstrukturisasi pengembangan produk dengan menggunakan satu runtunanpekerjaan yang disebut dengan Sprint, iterasi dari pekerjaan yang biasanya berdurasi 1-4 minggu. Sprint memiliki durasi dan diakhiri pada waktu yang spesifik tanpa memperhatikan status dari pekerjaan yang dilakukan, baik selesai maupun tidak. Pada durasi yang ditentukan tersebut, dilakukan pengembangan produk yang terdapat dalam proyek.Durasi dari Sprint tidak dapat diperpanjang.
c. Sprint Planning
Pada awal dari setiap Sprint, dilakukan pertemuan Sprint Planning. Pada SprintPlanning, Product Owner dan tim Scrum melakukan review terhadap Product backlog, mendiskusikan hasil dan konteks dari poin yang akan dibuat, dan tim Scrum
19 memilih poin-poin yang terdapat pada Product backlog untuk dikerjakan dan dapat diselesaikan pada akhir dari Sprint, dimulai dari daftar teratas pada Product backlog. Setiap poin yang dipilih dari Product backlog kemudian didesain dan didekomposisi dalam sebuah kumpulan pekerjaan individu.Daftar dari pekerjaan dituliskan ke dalam sebuah dokumen yang disebut dengan Sprint Backlog.
d. Daily Scrum Meeting
DailyScrum adalah kegiatan dengan batasan waktu maksimum selama 15 menit agar Tim Pengembang dapat mensinkronisasikan pekerjaan mereka dan membuat perencanaan untuk 24 jam ke depan. Hal ini dilakukan dengan meninjau pekerjaan semenjak DailyScrum terakhir dan memperkirakan pekerjaan yang dapat dilakukan sebelum melakukan DailyScrum berikutnya.Tim Pengembang menggunakan DailyScrum untuk meninjau perkembangan menuju Sprint Goal dan meninjau tren perkembangan menuju selesainya pekerjaan yang ada di dalam SprintBacklog.DailyScrum mengoptimalisasi kemungkinan Tim Pengembang akan mencapai SprintGoal. DailyScrum meningkatkan komunikasi, menghilangkan pertemuan-pertemuan lain, mengidentifikasi hambatan untuk dihilangkan, mendukung pembuatan keputusan secara cepat dan meningkatkan tingkat pengetahuan tim. Pertemuan ini adalah kunci dari proses peninjauan dan pengadaptasian.
e. Sprint Review and Retrospective
Setelah Sprint berakhir, terdapat satu aktifitas yang disebut dengan SprintReview.SprintReview melibatkan timScrum dan stakeholder untuk melakukan inspeksi pada pekerjaan yang telah selesai dilakukan selama Sprint. Inspeksi ini memuat diskusi mengenai perkerjaan yang sebelumnya dan rencana selanjutnya untuk pekerjaan tersebut. Pertemuan SprintReview ini dihadiri oleh Product Owner, Tim Pengembang, Scrum Master, beserta customer, stakeholders, ahli, dan beberapa orang yang tertarik untuk bergabung. Melalui SprintReview, timScrum selanjutnya mengadakan SprintRetrospective. Pada SprintRetrospective, timScrum berkesempatan untuk meninjau dirinya sendiri dan membuat perencanaan mengenai peningkatan yang akan dilakukan pada Sprint berikutnya.
3. Postgame
Pada fase ini terdapat Closure.Closure merupakan satu fase yang menyatakan bahwa manajemen dari tim merasa bahwa variabel dari waktu, kompetisi, permintaan, harga, dan kualitas telah sesuai untuk versi terbaru yang akan dirilis,
dengan demikian proyek dinyatakan "closed" dan memasuki fase ini. Fase ini mempersiapkan produk yang telah dikembangkan untuk beberapa kelengkapan umum lainnya seperti integrasi, pengujian sistem, dokumentasi, persiapan materi pelatihan penggunaan sistem, dan persiapan materi pemasaran.
Berikut ditampilkan gambaran umum dari tahapan/aktifitas Sprint dalam model Scrum.
Gambar 2.1.10 Alur Proses Scrum 2.7.Eight Golden Rules
Shneiderman & Plaisant (2010, p. 606) mengatakan bahwa terdapat 8 aturanyang dapat digunakan sebagai petunjuk dasar yang baik untuk merancang suatu user interface. Delapan aturan ini disebut dengan Eight Golden Rules of Interface Design, yaitu:
21 Konsistensi dilakukan pada urutan tindakan, perintah, dan istilah yang
digunakan pada prompt, menu, serta layar bantuan. • Cater to universal usability
Mengenali kebutuhan user yang beragam.Membedakan antara user pemula dengan user yang sudah ahli. Menambahkan fitur bagi user pemula seperti, penjelasan pada awal penggunaan web atau aplikasi da juga menambahkan fitur bagi user yang sudah ahli seperti, menambahkan penggunaan shortcut. Hal ini dapat memperkaya desain dari suatu user interface dan meningkatkan kualitas dari suatu sistem.
• Offer informative feedback
Untuk setiap tindakan operator, sebaiknya disertakan suatu sistem umpan balik.Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan umpan balik yang sederhana.Tetapi ketika tindakan merupakan hal yang penting, maka umpan balik sebaiknya lebih substansial. Misalnya muncul suatu suara ketika salah menekan tombol pada waktu input data atau muncul pesan kesalahannya.
• Design dialogs to yield closure
Urutan tindakan sebaiknya diorganisir dalam suatu kelompok dengan bagian awal, tengah, dan akhir. Umpan balik yang informatif akan meberikan indikasi bahwa cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan berikutnya.
• Prevent errors
Sedapat mungkin sistem dirancang sehingga pengguna tidak dapat melakukan kesalahan fatal.Jika kesalahan terjadi, sistem dapat mendeteksi kesalahan dengan cepat dan memberikan mekanisme yang sedehana dan mudah dipahami untuk penanganan kesalahan.
• Permit easy reversal of actions
Hal ini dapat mengurangi kekuatiran pengguna karena pengguna mengetahui kesalahan yang dilakukan dapat dibatalkan; sehingga pengguna tidak takut untuk mengekplorasi pilihan-pilihan lain yang belum biasa digunakan.
Pengguna ingin menjadi pengontrol sistem dan sistem akan merespon tindakan yang dilakukan pengguna daripada pengguna merasa bahwa sistem mengontrol pengguna. Sebaiknya sistem dirancang sedemikan rupa sehingga pengguna menjadi inisiator daripada responden.
• Reduce short-term memory load
Keterbatasan ingatan manusia membutuhkan tampilan yang sederhana atau banyak tampilan halaman yang sebaiknya disatukan, serta diberikan cukup waktu pelatihan untuk kode, mnemonic, dan urutan tindakan.
2.8.Human Capital Management
Gartner(2015) mengatakan bahwaHuman capital management adalah sekumpulan aktivitas yang berhubungan dengan pemberdayaan sumber daya manusia dalam suatu organisasi atau instansi.Kegiatannya berfokus pada kebutuhan suatu organisasi dalam memberikan kompetensi khusus dan diimplementasikan terutama dalam tiga hal, yaitu penerimaan tenaga kerja, pengelolaan tenaga kerja dan optimasi tenaga kerja. Selain itu terdapat beberapa hal lain yang menjadi ruang lingkup dalam Human Capital Management, yaitu:
• Administrasi Personil • Perencanaan Tenaga Kerja
• Pengelolaan Performa Tenaga Kerja • Pendidikan dan Pelatihan
• Recruitment
• Analisa Ketenagakerjaan (Reporting & Analytics)
2.9.Zend Framework
Website Zend(2006)mengatakan bahwa Zend framework merupakan suatu framework untuk mengembangkan aplikasi berbasis web dan menggunakan PHP 5. Pengimplementasian Zend Framework menggunakan system object-oriented. Komponen dan struktur dari Zend Framework sangat unik, setiap komponen didesain dengan tingkat ketergantungan yang rendah antara komponen yang satu dengan komponen lainnya.Hal ini mempermudah developer dalam menggunakan setiap komponen secara terpisah.
23 Komponen dari Zend Framework sendiri dapat membentuk sebuah aplikasi berbasis web yang kuat ketika seluruh komponen tersebut digabungkan. Zend Framework sendiri menawarkan sebuah performa yang tinggi dan kuat dengan mengimplementasi MVC (Model-View-Controller), database yang mudah digunakan dan menggunakan HTML untuk form rendering, validation dan filtering sehingga developer dapat menggabungkan seluruh operasinya dengan mudah menggunakan object oriented interface. Dengan menggunakan Zend Framework dalam pengembangan aplikasi akan membantu dalam mengurangi waktu yang digunakan.
2.10. PHP
PHP Group(2001)mengatakan bahwa PHP (Hypertext Preprocessor) merupakan salah satu bahasa pemrograman yang sangat terkenal dalam pembuatan sebuah website. PHP biasa digunakan bersama dengan HTML untuk meningkatkan sebuah halaman web. Dengan PHP banyak hal yang dapat dilakukan dalam meningkatkan sebuah website, seperti membuat halaman login dengan username dan password. Dalam penulisannya PHP menggunakan tanda khusus pada awal dan akhir text, yaitu dengan tanda <?php dan ?>.
2.11. JQuery
Saputra, Eka (2014)mengatakan bahwa JQuery merupakan library pada Javascript yang berfungsi untuk mengotomasi dan menyederhanakan perintah-perintah umum pada Javascript dan HTML. Javascript sendiri merupakan suatu bahasa pemrograman yang digunakan untuk penunjang aplikasi web-based. Javascript ini digunakan untuk memudahkan pengguna dalam berselancar di internetmenggunakan web browser yang biasanya kodenya disisipkan dengan tag SCRIPT.Plugin pada JQuery sangat banyak, sehingga JQuery sangat populer di kalangan programmer web-based.