• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 LANDASAN TEORI"

Copied!
32
0
0

Teks penuh

(1)

7 BAB 2

LANDASAN TEORI

2.1. Unified Modeling Language (UML)

Menurut Whitten & Bentley (2007:371), Unified Modeling Language (UML) adalah sebuah bahasa pemodelan yang digunakan untuk menentukan atau mendeskripsikan sebuah sistem software berdasarkan objek-objek yang ada di sistem tersebut. UML tidak menentukan metode apa yang harus digunakan dalam mengembangkan suatu sistem, namun hanya menentukan notasi-notasi standar yang biasa digunakan untuk object modeling.

Berikut adalah empat macam UML yang umum digunakan pada saat pengembangan sebuah software atau website :

2.1.1. Use-Case Diagram

Menurut Whitten & Bentley (2007:246) Use-case diagram adalah sebuah diagram yang mendeskripsikan interaksi antara sistem dengan bagian eksternal dari sistem serta dengan user. Secara grafis, Use-case diagram ini mendeskripsikan siapa yang akan menggunakan sistem yang ada dan bagaimana ekspektasi user saat berinteraksi dengan sistem tersebut.

Use-case diagram memiliki unsur yang harus dipenuhi, yaitu :

Use Cases, yaitu sekumpulan fungsi yang terdapat dalam sistem dimana fungsi-fungsi tersebut dapat dilakukan oleh actor (user) untuk melakukan pekerjaannya dengan sistem yang ada.

Actors, yaitu segala sesuatu yang berinteraksi dengan sistem untuk bertukar informasi, baik user maupun sistem dari luar. Relationships, yaitu garis yang menghubungkan antara actors

dengan use cases yang dapat menggambarkan hubungan antara actors dengan use cases itu sendiri.

(2)

Gambar 2. 1 Use-Case Diagram (Sumber: Whitten & Bentley (2007:246))

Tabel 2. 1 Notasi Use-Case Diagram

Nama Komponen Keterangan Simbol

Use Case Use case digambarkan sebagai lingkaran elips dengan nama use case dituliskan di dalam elips tersebut Actor Actor adalah pengguna sistem. Actor

tidak terbatas hanya manusia saja, jika sebuah sistem berkomunikasi dengan aplikasi lain dan membutuhkan input atau memberikan output, maka aplikasi tersebut juga dianggap sebagai actor.

Association Asosiasi digunakan untuk menghubungkan actor dengan use case. Asosiasi digambarkan dengan sebuah garis yang menghubungkan antara

Use case named

(3)

actor dengan use case. 2.1.1.1. Use-Case Narrative

Menurut Whitten & Bentley (2007:246), Use-case narrative adalah sebuah deskripsi yang lebih jelas dari sebuah Use-case diagram, dimana pada use-case narrative ini dijelaskan secara mendalam bagaimana user akan berinteraksi dengan sistem yang ada sehingga bisa menyelesaikan tugas yang ada. Use-case narrative ini digunakan untuk dapat menerjemahkan user-case diagram agar setiap fungsi yang ada dapat dijelaskan dengan lebih spesifik.

Terdapat beberapa bagian yang perlu diperhatikan pada saat menggunakan use-case narrative, antara lain :

1. Author : nama dari orang yang berpartisipasi dalam menulis use-case dan orang yang menyediakan titik temu bagi yang membutuhkan informasi tentang use-case.

2. Date : tanggal terakhir use-case dimodifikasi. 3. Version : versi use-case tersebut.

4. Use-case name : berisikan tujuan yang ingin dicapai oleh use-case. Nama yang ada harus diawali kata kerja.

5. Use-case type : business-oriented dan merefleksikan tingkah laku dari sebuah sistem.

6. Use-case ID : suatu tanda pengenal yang unik yang

mengidentifikasikan sebuah use-case.

7. Priority : menginformasikan tingkat kepentingan dari use-case berada di tingkat tinggi, sedang, atau rendah.

8. Source : mendefinisikan aspek-aspek yang memicu dibentuknya use-case, bisa berupa kebutuhan, dokumen yang spesifik, atau stakeholder.

9. Primary business actor : stakeholder utama yang mendapatkan benefit apabila use-case yang ada telah berjalan.

10. Other participating actors : aktor lain yang berpartisipasi dalam use-case untuk mencapai tujuan dari use-case tersebut.

11. Interested stakeholder(s) : siapa saja yang menopang pengembangan dan pengoperasian dari sistem software.

(4)

12. Description : ringkasan pendek yang mendeskripsikan maksud dari use-case dan aktivitas dari use-case tersebut.

Berikut adalah contoh dari use-case narrative :

Gambar 2. 2 Use-Case Narrative (Sumber: Whitten & Bentley (2007:257))

Untuk setiap use-case narrative yang ada, kita harus membentangkannya dengan memasukkan arah dari event khusus dari use-case tersebut yang dapat menginformasikan langkah-langkah yang mendeskripsikan aktivitas aktor dari awal memulai melaksanakan use-case hingga akhir. Adapun informasi yang harus kita masukkan adalah sebagai berikut :

1. Precondition : kondisi yang harus dipenuhi sebelum melaksanakan use-case.

2. Trigger : event yang dimulai saat use-case dieksekusi.

3. Typical course of events : aktivitas normal yang dilakukan antara aktor dengan sistem yang ada untuk menyelesaikan tugas yang ada.

(5)

4. Alternate courses : mendokumentasikan hal-hal yang terjadi pada saat use-case mengalami variasi dari aktivitas yang tidak biasanya. 5. Conclusion : kesimpulan yang didapat apabila use-case berakhir

dengan sukses. Dengan kata lain, ketika aktor menerima sesuatu dari sistem.

6. Postcondition : statement pembatas ketika use-case berhasil dieksekusi.

7. Business rules : prosedur dan kebijakan bisnis yang harus dipatuhi oleh sistem.

8. Implementation constraints and specifications : menjelaskan lebih lanjut kebutuhan non-fungsional yang dapat memberi dampak pada realisasi use-case.

9. Assumptions : asumsi yang diperkirakan oleh pembuat ketika mendokumentasikan use-case.

10. Open issues : pertanyaan atau isu yang perlu dipecahkan sebelum use-case mencapai tahap akhir.

(6)

Gambar 2. 3 Expand Use-Case Narrative (Sumber: Whitten & Bentley (2007:259))

(7)

Gambar 2. 4 Conclusion of Expand Use-Case Narrative (Sumber: Whitten & Bentley (2007:260))

2.1.2. Class Diagram

Menurut Whitten & Bentley (2007:382), class diagram adalah sebuah diagram menggambarkan struktur objek dari sistem yang ada, dimana class diagram ini memperlihatkan object class yang menyusun diagram ini beserta hubungan antara object class tersebut.

Menurut Whitten & Bentley (2007:400-405), Terdapat beberapa tahap pembentukan class diagram, antara lain :

1. Mengidentifikasi asosiasi dan keberagaman dari class yang ada dari objek.

Pada tahapan ini, kita akan mengidentifikasi asosiasi yang ada dari class object yang ada. Asosiasi yang dimaksud di sini adalah mengenai informasi apa yang perlu diketahui antara sebuah objek dengan objek lainnya.

(8)

2. Mengidentifikasi hubungan yang general dan hubungan khusus atas class.

Setelah kita mengetahui asosiasi dan keberagaman dari class yang ada, kita perlu mengetahui apakah hubungan antar class tersebut termasuk hubungan umum atau hubungan khusus. Hubungan umum atau khusus yang dimaksud di sini adalah klasifikasi dari sebuah hierarki, sebuah hubungan berdasarkan supertype class (abstract / parent) dan subtype class (concrete / child).

3. Mengidentifikasi hubungan agregasi / komposisi dari suatu class. Pada tahap ini, kita harus menentukan apakah ada hubungan agregasi / komposisi yang terjadi antar class yang ada. Hubungan agregasi yang dimaksud adalah jenis hubungan yang unik dari suatu objek yang merupakan bagian dari objek tertentu.

4. Menyiapkan class diagram itu sendiri.

Pada tahap ini, kita menyusun class diagram berdasarkan informasi mengenai hubungan antar class yang ada, baik hubungan asosiasi, hubungan general / khusus, maupun hubungan agregasi yang terjadi antar class tersebut.

Ada 2 macam class yang harus diperhatikan, yaitu :

1. Persistent class : adalah sebuah class yang mendeskripsikan sebuah objek yang dipakai lebih lama dari pada program yang mengeksekusi objek tersebut (objek tersebut disimpan di dalam sebuah database). 2. Transient object class : adalah sebuah class yang mendeskripsikan

sebuah objek yang dibuat sementara ketika program yang mengeksekusi objek tersebut berjalan.

(9)

Gambar 2. 5 Class Diagram (Sumber: Whitten & Bentley (2007:406))

(10)

Tabel 2. 2 Notasi diagram class

Symbol Penjelasan

Class

Deskripsi dari objek yang terbagi atas 3 bagian, yaitu nama class pada bagian atas, atribut pada bagian tengah dan operasi pada bagian bawah.

Aggregation

Bentuk spesial dari hubungan asosiasi yang memiliki hubungan secara spesifik antar kumpulan dan sebuah bagian. Agregasi digambarkan dengan wajik tidak berisi. Association

Menggambarkan hubungan terstruktur antar class yang saling berelasi

Generalization

Relasi yang memperlihatkan suatu kelas dapat lebih general atau lebih spesifik dari kelas lainnya.

contains

0..* 1

Multiplicity

Menggambarkan jumlah objek yang berpartisipasi dalam hubungan antar class.

2.1.3. Sequence Diagram

Menurut Whitten & Bentley (2007:394), sequence diagram adalah sebuah diagram yang menggambarkan interaksi antara actor dan system untuk sebuah skenario use-case. Pada tahap pembuatan sequence diagram, kita belum menganalisa lebih lanjut individual object class, namun hanya memikirkan keseluruhan sistem yang ada.

(11)

Sequence diagram membantu kita untuk mengidentifikasi setiap data yang masuk dan keluar dari sebuah sistem. Pada sequence diagram hanya sebuah skenario dari sebuah use-case, sehingga sebuah use-case dapat memiliki beberapa sequence diagram untuk menggambarkan keseluruhan use-case tersebut

.

Gambar 2. 6 Sequence Diagram (Sumber: Whitten & Bentley (2007:396))

Tabel 2. 3 Notasi diagram sequence

Simbol Nama Keterangan

Object Lifeline Menyatakan kehidupan

suatu objek.

Actor Orang atau divisi yang

terlibat dalam suatu sistem.

(12)

antara Object Lifeline.

Message (return) Menyatakan arah kembali

dalam 1 Object Lifeline.

Message (return) Menyatakan arah kembali

antara Object Lifeline.

Activation Menyatakan objek dalam

keadaan aktif dan berinteraksi.

2.1.4. Activity Diagram

Menurut Whitten & Bentley (2007:394), activity diagram adalah sebuah diagram yang bisa digunakan untuk menggambarkan secara grafis alur dari sebuah proses bisnis, langkah-langkah dari sebuah use-case, atau logika dari sebuah objek. Activity diagram sangat berguna untuk model action yang akan dikerjakan ketika sebuah operasi dieksekusi serta hasil dari action tersebut.

Tidak semua use-case harus digambarkan dalam sebuah activity diagram. Activity diagram biasanya digunakan untuk use-case yang memiliki logika yang cukup kompleks. Activity diagram bisa membantu kita untuk berpikir tentang logika dari sebuah sistem.

(13)

Gambar 2. 7 Activity Diagram (Sumber: Whitten & Bentley (2007:392))

Tabel 2. 4 Notasi diagram activity

Komponen Simbol Penjelasan

Initial node Merupakan awal dari proses

Actions Merupakan langkah-langkah individu

yang membentuk aktivitas total yang ditunjukkan melalui diagram.

(14)

Decision Menunjukkan kegiatan pemilihan yang menghasilkan keputusan.

Fork Menunjukkan tindakan dilakukan

secara bersamaan

Join Menandakan akhir dan penggabungan

pross yang berlangsung bersamaan.

Activity Final Merupakan akhir dari proses.

2.2. Object Oriented Programming (OOP)

Menurut Dan Clark (2013:1), object-oriented programming adalah sebuah pendekatan pengembangan software dimana struktur dari software tersebut berdasarkan pada interaksi antar object satu sama lain untuk menyelesaikan tugas tertentu. Di dalam object-oriented programming terdapat beberapa karakteristik yang perlu kita pahami, antara lain :

2.2.1. Object

Object adalah sebuah struktur untuk menggabungkan data yang akan dikelola dan prosedur-prosedur untuk bekerja dengan data tersebut. Object-object ini diimplementasikan sebagai fungsi dari sebuah object-oriented programming (Dan Clark, 2013:3).

2.2.2. Class

Sebuah class mendefinisikan struktur dan metode yang akan terkandung dalam sebuah object berdasarkan class tersebut. Sebuah class bertanggung jawab dalam mengatur data yang ada. Ketika mendefinisikan struktur dari sebuah class, kita harus menentukan data apa yang akan dikelola oleh class tersebut. Atribut dari class

(15)

mengidentifikasikan informasi dari data yang ditangani oleh class (Dan Clark, 2013:16).

2.2.3. Encapsulation

Encapsulation adalah proses dimana akses langsung pada suatu data tidak diberikan, namun disembunyikan. Apabila kita ingin mendapatkan akses terhadap suatu data, kita harus berinteraksi dengan object yang bertanggung jawab terhadap data tersebut. Dengan adanya encaplsulation terhadap suatu data, kita membuat data yang kita miliki lebih aman dan dapat diandalkan karena kita mengetahui bagaimana suatu data dapat diakses dan operasi apa yang sedang bekerja pada data tersebut (Dan Clark, 2013:4).

2.2.4. Polymorphism

Polymorphism adalah kemampuan dua object berbeda untuk menanggapi pesan permintaan yang sama dengan cara unik dari masing-masing object tersebut. Dalam OOP, kita bisa mengimplementasikan polymorphism ini melalui sebuah proses yang dinamakan overloading, yang memungkinkan kita untuk mengimplementasikan method yang berbeda dari sebuah object yang memiliki nama yang sama (Dan Clark, 2013:4).

2.2.5. Inheritance

Inheritance digunakan di OOP untuk mengklasifikasi object-object dalam program kita yang memiliki karakteristik dan fungsi yang sama. Hal ini membuat kinerja melalui object-object yang ada lebih mudah. Selain itu, proses pemrograman lebih mudah karena ini memungkinkan kita untuk menggabungkan karakteristik umum ke parent object dan menurunkan karakteristik tersebut ke child object (Dan Clark, 2013:5).

2.3. Database

Basis data adalah sekumpulan data yang saling berhubungan satu dengan yang lain secara logikal dan suatu deskripsi data yang dirancang untuk memenuhi kebutuhan informasi suatu organisasi (Begg dan Connoly, 2010:14).

(16)

Untuk mengolah basis data dengan baik, kita memerlukan suatu perangkat lunak yang biasa dikenal dengan DBMS. Menurut Begg dan Connoly (2010:16), DBMS (Database Management System) adalah suatu sistem piranti lunak yang memungkinkan user untuk mendefinisikan, membuat, merawat, dan mengontrol akses ke dalam basis data.

DBMS menyediakan beberapa fasilitas sebagai berikut : a. Data Definition Language

DDL (Data Definition Language) menurut Begg dan Connoly (2010:40), adalah suatu bahasa yang memungkinkan Database Administrator (DBA) atau user untuk mendeskripsikan nama dari suatu entitas, atribut, dan relasi data yang diminta oleh aplikasi bersamaan dengan integritas data dan batasan keamanan datanya.

DDL memungkinkan pemakai untuk membuat spesifikasi tipe data, mendefinisikan basis data, struktur data, dan constraint data untuk disimpan dalam basis data. Contohnya create table, drop table, dan alter table.

b. Data Manipulation Language

DML (Data Manipulation Language) menurut Begg dan Connoly (2010:41), adalah suatu bahasa yang memberikan fasilitas pengoperasian data yang ada di dalam basis data.

Pengoperasian data yang akan dimanipulasi meliputi : 1. Penambahan data baru ke dalam basis data.

2. Modifikasi data yang disimpan ke dalam basis data. 3. Pemanggilan data yang terdapat di dalam basis data. 4. Penghapusan data dari basis data.

Sedangkan Procedural DML adalah suatu bahasa yang memperbolehkan user untuk mendeskripsikan ke sistem data apa yang dibutuhkan dan bagaimana mendapatkan data tersebut.

DML memungkinkan pemakai memasukkan, memperbaharui, menghapus, mengirim, dan mengambil data dari basis data. Contohnya insert, update, delete, dan select.

Menurut Begg dan Connoly (2010:18-20), DBMS memiliki lima komponen yang penting yaitu :

(17)

Dalam menjalankan aplikasi dan DBMS diperlukan piranti keras. Piranti keras dapat berupa personal computer, single mainframe, atau komputer jaringan berupa server.

2. Software (piranti lunak)

Piranti lunak meliputi DBMS software dan program aplikasi beserta sistem operasi (OS), termasuk piranti lunak jaringan bila DBMS digunakan dalam jaringan seperti LAN.

3. Data

Data merupakan komponen terpenting dari DBMS khususnya sudut pandang dari end user mengenai data.

4. Prosedur

Prosedur adalah panduan dan instruksi dalam membuat rancangan dan menggunakan basis data. Pengguna sistem dan staf yang mengelola basis data membutuhkan prosedur dalam menjalankan sistem dan mengelola basis data itu sendiri. Prosedur di dalam basis data dapat berupa login di dalam basis data ataupun berupa penggunaan sebagian fasilitas DMBS.

Selain itu, prosedur lainnya dapat berupa membuat salinan backup basis data, memeriksa perangkat keras dan piranti lunak yang sedang berjalan, mengubah struktur basis data, meningkatkan kinerja atau membuat arsip data pada secondary storage.

5. Manusia

Komponen terakhir yaitu manusia itu sendiri yang terlibat dalam sistem tersebut. Keterlibatan manusia tidak dapat lepas, mulai dari yang merancang sampai dengan yang menggunakan sistem tersebut.

2.4. Entity Relationship Diagram (ERD)

Diagram yang digunakan untuk menggambarkan konsep logika basis data adalah Entity Relationship Diagram (ERD). Penggunaan Entity Relationship Diagram (ERD) dimungkinkan untuk memberikan kemudahan dalam melakukan pemodelan data, seperti yang disampaikan oleh Connolly dan Begg (2010, p473), Entity Relationship Diagram (ERD) digunakan untuk menggambarkan hubungan antara satu entitas dengan entitas yang lain.

(18)

Entitas merupakan kelompok orang, tempat, objek, kejadian, atau konsep tentang apa yang diperlukan untuk mendapatkan dan menyimpan data. Komponen dalam basis data yang mengacu kepada entitas adalah table data.

Atribut merupakan sifat atau karakteristik deskriptif yang diidentifikasi untuk disimpan ke dalam suatu entitas tertentu. Komponen dalam basis data yang mengacu kepada atribut adalah record.

Hubungan merupakan hubungan bisnis alami yang ada di antara satu atau lebih entitas.

Gambar 2. 8 Contoh Entity Relationship Diagram (Sumber: Connolly dan Begg (2010:16))

2.5. MySQL

Menurut Welling dan Thomson (2005:205) MySQL adalah Relational Database Management System (RDBMS) yang sangat cepat dan kuat. MySQL adalah DBMS yang bersifat relational, open source, berlevel enterprise, dan multithread. MySQL merupakan bahasa yang memiliki kemampuan cukup baik untuk menunjang kerja user, baik user yang sudah berpengalaman dengan database maupun untuk pemula. SQL digunakan untuk mencari informasi, memanupulasi data, mendefinisikan data dan bahasa pengendali dokumentasi. Setiap pengguna basis data memerlukan bahasa pemrograman yang dapat dipakai sesuai dengan fungsi dan tugasnya.

(19)

Berikut adalah kelebihan dari MySQL : 1. Dukungan standar

Dukungan entry-level ANSI SQL92 dan ODBC level 0-2 SQL standar. 2. Dukungan bahasa

Database server MySQL dapat mengeluarkan pesan kesalahan dalam berbagai bahasa seperti : bahasa Belanda, Ceko, Inggris, Perancis, Jerman, Italia, Spanyol, dll.

3. Bahasa pemrograman API’s bagi clients untuk mengakses database.

4. Aplikasi database MySQL dapat ditulis dalam beberapa bahasa pemrograman, seperti C, Perl, PHP, Dll.

5. Tabel yang besar.

6. MySQL menyimpan setiap tabel ke dalam database sebagai file tersendiri di dalam database directory. Ukuran maksimum dari suatu tabel antara empat gigabyte dan batas sistem operasi pada ukuran file maksimum.

7. Kecepatan dan kekuatan

MySQL kira-kira tiga hingga empat kali lebih cepat daripada database komersil lainnya.

8. Tidak mahal

Walaupun mempunyai versi komersial, namun sesungguhnya MySQL dapat diunduh secara gratis.

9. Kemudahan penggunaan

Anda dapat berinteraksi dengan MySQL menggunakan perintah SQL yang sederhana. Perintah SQL adalah standar bahasa RDBMS.

10. Berjalan pada berbagai sistem operasi

MySQL berjalan dengan baik pada banyak sistem operasi, seperti Windows, Linux, Mac OS, Unix, dll.

2.6. Model Proses Waterfall

Menurut Pressman (2010:39), model proses Waterfall, yang dikenal dengan Classic Life Cycle, adalah model proses yang sistematis, dimana pendekatan yang dilakukan berurutan dalam pengembangan perangkat lunak yang diawali dengan analisis kebutuhan-kebutuhan client (requirement analysis) dan akan melalui perencanaan dan perancangan

(20)

(design), penuangan dalam kode (code generation), uji coba(testing), dan diakhiri dengan proses pemeliharaan (support/maintenance).

Adapun penjelasan dari tahapan-tahapan model proses Waterfall adalah sebagai berikut :

1. Requirement analysis : pada tahap ini, teknisi berfokus pada kebutuhan dan spesifikasi dari software yang akan dibangun. Untuk memahami software yang akan dibangun, software analyst harus mengetahui informasi-informasi seperti fungsi, perilaku, kinerja, dan tampilan software yang diperlukan.

2. Design : pada tahap perancangan, teknisi berpusat pada 4 atribut berbeda dari sebuah software, antara lain struktur data, arsitektur software, tampilan software, dan detail prosedur (algorithmic). Proses perancangan ini sendiri menerjemahkan kebutuhan-kebutuhan yang ada menjadi sebuah software yang bisa dinilai kualitasnya sebelum memulai coding.

3. Code generation : tahapan membuat software dimana setiap rancangan yang ada diterjemahkan menjadi sebuah program utuh yang bisa digunakan oleh user. 4. Testing : setelah program dihasilkan, uji coba program dimulai. Uji coba yang

dimaksudkan berpusat pada logika internal dari software yang dibangun, memastikan bahwa setiap pernyataan telah diuji, dan uji coba pada fungsi-fungsi eksternal, dimana uji coba eksternal itu meliputi uji coba untuk menemukan kesalahan dan memastikan bahwa input sesuai dengan yang diperlukan agar dapat menghasilkan hasil yang ingin dicapai.

5. Support / Maintenance : proses pemeliharaan dimana software yang dihasilkan akan mengalami perubahan berdasarkan masukan-masukan dari user yang menggunakan software tersebut. Perubahan yang terjadi biasanya karena adanya kesalahan (errors) yang terjadi karena software yang dibangun masih harus beradaptasi dengan lingkungan eksternal yang ada, atau karena kebutuhan tambahan dari user itu sendiri. Pada tahap ini, akan dilakukan evaluasi pada software yang ada dan mengulang tahapan-tahapan yang sebelumnya dari awal dibandingkan harus membangun software yang baru.

(21)

Gambar 2. 9 Waterfall model (Sumber: Pressman (2010:29))

2.7. Teori Evaluasi (Interaksi Manusia dan Komputer)

Menurut Plaisant dan Shneiderman (2010: 32), ada lima faktor manusia terukur yang dapat dijadikan sebagai pusat evaluasi, yaitu :

a. Waktu belajar

Waktu yang dibutuhkan oleh user untuk mempelajari cara relevan dalam menggunakan perangkat lunak yang ada untuk melakukan tugas dengan lancar. b. Kecepatan kinerja

Waktu yang diperlukan untuk suatu perangkat lunak mengerjakan suatu tugas yang diberikan.

c. Tingkat Kesalahan

Berapa banyak kesalahan yang dilakukan oleh user dan kesalahan-kesalahan seperti apa yang bisa terjadi saat user menggunakan perangkat lunak untuk mengerjakan tugas tersebut.

d. Daya ingat

Kemampuan user mempertahankan pengetahuannya setelah jangka waktu tertentu untuk menggunakan perangkat lunak yang ada.

e. Kepuasan Subjektif

Kepuasan user terhadap berbagai aspek pada saat menggunakan perangkat lunak.

Selain itu, menurut Plaisant dan Shneiderman (2010:88-89), disebutkan pula bahwa ada delapan aturan emas yang digunakan dalam merancang antar muka, yaitu :

(22)

Konsistensi merupakan aturan yang sering dilanggar karena konsistensi memiliki banyak bentuk, antara lain urutan aksi, istilah yang digunakan, warna, layout, kapitalisasi, huruf dan lain-lainnya. Dengan tampilan yang konsisten akan membantu user untuk merasa tetap berada dalam aplikasi yang sama walaupun telah berpindah halaman.

b. Memenuhi kebutuhan universal

Memenuhi kebutuhan universal maksudanya memahami kebutuhan user yang bermacam-macam dan membuat desain yang fleksibel yang mendukung perubahan dalam konten. Perbedaan Novice-Expert, jarak umur, kecacatan fisik, serta beragam teknologi masing-masing merupakan syarat yang harus menjadi pertimbangan dalam desain.

c. Memberikan umpan balik yang informatif

Umpan balik dari sistem harus ada pada setiap aksi user. Untuk aksi kecil yang sering dilakukan, tanggapan dapat dibuat dengan sederhana. Sedangkan untuk aksi besar dan jarang dilakukan, respon hendaknya lebih tegas dan jelas agar user dapat mengerti dengan jelas.

d. Dialog untuk keadaan akhir

Urutan aksi hendaknya disusun menjadi kategori awal, tengah, dan akhir. Untuk memberikan kepuasan pencapaian, kelegaan, dan sebagai tanda untuk mempersiapkan diri memasuki kategori aksi selanjutnya, dibuatlah umpan balik yang informatif pada penyelesaian salah satu kategori aksi.

e. Pencegahan kesalahan

Sedapat mungkin sistem didesain agar user tidak dapat membuat kesalahan yang serius. Contohnya tidak memperbolehkan karakter alphabet pada kotak entry nomor. Interface harus mendeteksi kesalahan dan memberikan instruksi yang mudah dimengerti, membangun dan jelas untuk memperbaikinya jikalau user membuat kesalahan.

f. Pembalikan aksi yang sederhana

Dalam suatu aplikasi, pada setiap aksi user harus terdapat pembalikan aksi. Fitur ini dapat memperkecil kesalahan, karena user tahu bahwa aksi bisa dibatalkan. Pembalikan bisa saja atas satu aksi seperti saat memasukkan data, atau serangkaian aksi seperti memasukkan nama dan alamat di formulir pengisian.

(23)

g. Mendukung pusat kendali internal

User yang sudah terbiasa dengan suatu aplikasi, biasanya ingin memiliki kendali atas antarmuka dan tanggapan pada aksinya. Aksi antarmuka yang tidak seperti biasanya, rangkaian pemasukan data yang membosankan, tidak bisa atau sulit mendapatkan informasi yang diperlukan, dan tidak bisa menghasilkan aksi yang diinginkan dapat menimbulkan keresahan dan ketidakpuasan pada user. h. Mengurangi beban ingatan jangka pendek

Dikarenakan oleh keterbatasan manusia dalam memproses informasi dalam jangka pendek, dibutuhkan tampilan yang ringan, penggabungan halaman-halaman, pengurangan frekuensi window-window, pemberian waktu latihan yang cukup untuk kode-kode, hafalan dan rangkaian aksi. Oleh karena itu, dalam setiap perancangan aplikasi dibutuhkan alur aplikasi yang mudah diingat oleh user.

2.8. Model View Controller

Menurut Ajit, Kumar (2012:35), Model View Controller (MVC) adalah jenis arsitektur software yang dirancang untuk memisahkan kode program yang menangani presentasi tampilan, logika aplikasi, dan logika bisnis. Hal ini membuat sistem yang menggunakan arsitektur MVC lebih sederhana untuk mempertahankan lokasi kode yang relevan dengan lokasi tertentu secara signifikan sehingga proses pengembangan menjadi lebih mudah.

Definisi-definisi bagian dari MVC adalah sebagai berikut :

a. View : Tampilan yang sepenuhnya untuk bagian presentasi dari aplikasi. Tidak berisi logika sejauh diperbolehkan oleh bahasa pemrograman yang digunakan. Pada bagian view hanya terdapat tampilan aplikasi dan tidak berisi pengaturan sistem aplikasi.

b. Controller : controller menangani umpan balik dari user dan logika khusus untuk aplikasi. Pekerjaan dari controller adalah menerima input dari user, selain itu melalui controller ditemukan user interface untuk proses input-output, berkomunikasi dengan model bila diperlukan, mengirimkan output ke user, dan biasanya mengisi tampilan dengan konten yang relevan.

c. Model : Model melakukan logika bisnis pada aplikasi yang dijalankan. Dalam hal ini, logika bisnis yang dimaksud merujuk ke item yang mendasar dengan desain sistem secara keseluruhan. Misalnya, jika sebuah aplikasi

(24)

perpustakaan dibangun, logika yang memastikan pemilik kartu perpustakaan hanya menyewa sampai 5 buku pada suatu waktu akan menjadi bagian dari model. Bagian dari logika bisnis, model juga cenderung untuk mengontrol akses ke penyimpanan aplikasi, seperti database (s), dan melakukan CRUD (Create, Read Update, Delete) pada data yang tersimpan.

2.9. HyperText Markup Language (HTML)

HTML atau HyperText Markup Language, memiliki dua fitur esensial hypertext dan universalitas. Hypertext berarti anda dapat membuat sebuah link pada sebuah halaman web yang mengarahkan pengunjung ke halaman web lain pada internet. Itu berarti informasi pada web bisa diakses dari berbagai arah. Universalitas maksudnya bahwa dikarenakan dokumen HTML disimpan sebagai Text Only file, secara virtual setiap komputer dapat membaca dan membuka halaman web tersebut. Tidak masalah apakah pengunjung membukanya lewat Macintosh, Unix, atau Windows, atau bahkan mobil OS sekalipun (Castro, 2007:14).

Struktur dasar HTML : <!DOCTYPE html> <html> <head> <title>Judul Website</title> </head> <body> <!—Isi Website --> </body> </html>

(25)

Keterangan :

<!DOCTYPE html> : sebuah tag yang harus dideklarasikan pertama kali pada dokumen HTML. Tag ini bukan termasuk HTML tag, tetapi tag ini menginstruksikan kepada web browser mengenai veri HTML yang digunakan. Tag <!DOCTYPE html> adalah deklarasi doctype untuk HTML5.

<html> : Merupakan tag pembuka dari sebuah halaman website. tanpa mendeklarasikan <html>, maka sebuah script tidak dapat dikenal sebagai halaman website. Selain itu, segala bentuk kode yang ditulis di luar tag html tidak akan masuk ke dalam elemen halaman website.

<head> : Merupakan tag yang berisi semua informasi yang terkandung dalam kepala dokumen. Informasi ini tidak akan ditampilkan saat browser dijalankan. Dalam tag head biasanya terkandung tag meta, tag title, tag link untuk menghubungkan html dengan script lain seperti CSS, javascript, dan jquery.

<body> : Merupakan tag untuk membuka sebuah isi script yang ada didalam HTML. Semua yang terkandung dalam tag body (kecuali syntax untuk server-side scripting) akan terlihat pada browser.

2.10. Cascading Style Sheets (CSS)

Menurut Richard, York (2011:3), Beginning Cascading Style Sheet (CSS) merupakan bahasa yang dirancang untuk menggambarkan penampilan dokumen yang ditulis dalam bahasa pemrograman seperti HTML, ide dari W3C untuk menghadapi kebutuhan manufaktur dari browser dengan memperkenalkan lebih dari sekedar HTML tags, yaitu sebuah physical formatting tags yang baru (seperti font atau table tags). CSS merupakan sebuah penyelesaian, menyediakan fitur page layout yang diinginkan oleh web authors dengan menambahkan elemen dari CSS ke HTML tags yang ada. CSS menguasai banyak logical structure dari sebuah web page ketika mengirimkan berbagai fitur page layout agar mudah dimengerti dan mampunyai efek yang lebih powerful.

Ada tiga (3) cara untuk mengaplikasikan CSS ke HTML : 1. In-line

In-line style dituliskan langsung di dalam HTML tag menggunakan atribut style seperti contoh di bawah ini :

(26)

2. Internal

Embedded, atau Internal style digunakan untuk seluruh halaman. Di dalam tag head, tag style meliputi semua style pada halaman. Pada internal style kita bisa mendeklarasikan sebuah class atau id yang bisa memberikan style khusus pada tag HTML yang mengandung atribut class atau id yang dideklarasikan.

Contoh deklarasi internal CSS : <head>

<style>

p{font-weight:bold}

/*Membuat semua elemen p dalam halaman ini menjadi bold*/ .black-font{color : black}

#red-font{color : red}

/* Simbol “.” menandakan pendeklarasian sebuah class, sedangkan simbol “#” menandakan pendeklarasian sebuah id . Atribut id lebih kuat mempengaruhi tag HTML dibandingkan dengan atribut class */

</style> </head>

3. External

CSS external digunakan untuk lebih dari satu halaman website. CSS dibuat pada dokumen yang berbeda dan memiliki ekstensi .css (misal: style.css). CSS external juga bisa mendeklarasikan sebuah class dan id sama seperti CSS internal. Tautan untuk memanggil CSS external ditulis pada tag head dengan struktur seperti berikut :

<link rel=”stylesheet” type=”text/css” href=”style.css” />

2.11. Javascript (JS)

Javascript (biasa disingkat JS) adalah bahasa yang ringan, interpreted, dan berorientasi objek, dengan fungsi first-class. Javascript terkenal dengan bahasa scripting untuk halaman website, tetapi bisa juga dipakai pada lingkungan bukan

(27)

browser seperti node.js atau Apache CouchDB. Tujuan utama dari pemakaian javascript adalah untuk mengubah halaman website statis menjadi halaman website dinamis dan interaktif dalam ruang lingkup client-side scripting.

Sintaks penulisan javascript mirip dengan bahasa pemrograman Java dan bahasa pemrograman C sehingga banyak aturan-aturan penulisan dari kedua bahasa pemrograman tersebut yang biasa diterapkan dalam javascript. Akan tetapi ada yang membedakan javascript dengan Java yaitu pengembangannya. Javascript dikembangkan oleh Netspace dan produk website-nya disebut web script sedangkan Java dikembangkan oleh Sun Microsystems dan produk website-nya adalah applet.

Javascript bergantung pada browser yang memanggil halaman website yang mengandung javascript dan tentu saja script tersebut berada di dalam dokumen HTML. Javascript juga tidak memerlukan compiler khusus untuk menjalankannya.

Penulisan javascript dilakukan di dalam tag HTML dan sama seperti bahasa pemrograman C, javascript bersifat case sensitive. Javascript dapat dituliskan pada tag body maupun tag head. Pada head, javascript digunakan untuk membuat suatu function yang diaktifkan melalui event trigger pada tag body. Berikut adalah cara penulisan javascript dalam sebuah dokumen HTML :

<body> <script> document.write(“Hello World”); </script> </body> 2.12. Hypertext Preprocessor (PHP)

PHP (Hypertext Preprocessor) adalah bahasa pemrograman yang dirancang untuk menghasilkan halaman web interaktif pada komputer yang melayaninya, yang disebut web server. Tidak seperti HTML, dimana browser menggunakan tags dan markup untuk membuat halaman, kode PHP berjalan diantara halaman yang diminta dan web server untuk menambahkan dan mengubah output dasar dari HTML. Phillips dan Davis (2007:2).

PHP bersifat server-side,yang berarti kode program PHP diproses seluruhnya di dalam web server. Output dari proses web server tersebut akan disertakan pada halaman HTML. PHP memiliki dukungan lapisan integrasi database sehingga PHP

(28)

dapat dikoneksikan dengan berbagai macam database seperti MySQL, Oracle, PostgreSQL, dan lain sebagainya. Berikut ini adalah cara kerja dari PHP :

Gambar 2. 10 Cara Kerja PHP (Sumber: Phillips dan Davis (2007:13))

PHP memiliki beberapa kelebihan, di antaranya adalah : 1. Performa yang tinggi.

2. Antar muka ke banyak sistem database yang berbeda. 3. Built-in libraries untuk banyak tugas web yang umum. 4. Harga yang murah.

5. Mudah dipelajari dan digunakan. 6. Mendukung orientasi objek yang kuat. 7. Portabilitas

8. Ketersediaan source code. 9. Ketersediaan bantuan.

Berikut adalah contoh penulisan script php dalam sebuah dokumen HTML : <?php session_start(); ob_start(); include ‘connect.php’; $username = $_POST[‘username’]; $password = $_POST[‘password’]; if(empty($username)){ header(‘location:register.php?err=1’) }

(29)

else if(empty($password)){

header(‘location:register.php?err=2’) }

else{

$query = “SELECT username FROM Ms_user WHERE username = ‘$username’ ”; $result = mysql_query($query); $row = mysql_fetch_array($result); } ?> 2.13. Bootstrap

Menurut Spurlock (2013:1), bootstrap adalah sebuah framework tampilan depan open source yang dikembangkan oleh twitter yang dapat digunakan oleh front-end developer untuk membuat suatu website yang responsive untuk berbagai resolusi layar device. Adapun framework tampilan depan ini terdiri dari CSS dan Javascript yang sudah diatur sedemikian rupa agar sesuai standar website profesional yang telah banyak beredar. Bootstrap dapat di-download langsung di website resmi bootstrap, yaitu http://getbootstrap.com.

Setiap framework memiliki kelebihan dan kekurangan tersendiri dalam penerapannya. Adapun kelebihan dan kekurangan dari framework bootstrap berdasarkan https://www.eclipsewebmedia.com adalah sebagai berikut

Kelebihan :

- Bisa menyesuaikan dengan browser yang digunakan.

- Bootstrap dibuat menggunakan LESS sebagai CSS preprocessor yang dapat membantu mempermudah proses development yang sedang dilakukan.

- Dapat disesuaikan sesuai dengan kebutuhan. Kekurangan :

- Memerlukan waktu untuk mempelajari di awal penggunaan Bootstrap - Desain yang terbatas karena sudah memiliki konsep tertentu dalam

penggunaan bootstrap tersebut.

- Class yang terdapat pada bootstrap sulit untuk diingat karena tidak menggunakan kata-kata yang pada umumnya.

(30)

2.14. Laravel 4

Menurut situs resmi dari laravel yaitu http://laravel.com, Laravel 4 adalah sebuah web application framework dengan syntax yang elegan dan ekspresif, dimana laravel ini telah disusun sedemikian rupa sehingga developer dapat melakukan pengembangan dengan nyaman.

Laravel 4 merupakan sebuah framework free lisence yang dapat digunakan oleh developer untuk mengembangkan sebuah aplikasi. Framework ini dapat di-install dengan melalui composer, dan kemudian dapat di-download langsung melalui composer tersebut.

Adapun kelebihan dan kekurangan dari laravel 4 menurut http://blog.cubettech.com/ adalah sebagai berikut :

Kelebihan :

- Laravel sangat mudah untuk dikonfigurasi dan di-extend sehingga user mudah mengatur aplikasi yang dibuat.

- Menggunakan blade template engine yang memungkinkan untuk menggunakan syntax PHP dengan penulisan yang mudah dimengerti (clean code).

- File-file penyusun framework laravel 4 disusun secara otomatis sehingga mudah digunakan oleh developer.

- Menggunakan reverse routing sehingga developer bisa dengan mudah memberi nama pada route dan membuat link dari satu halaman ke halaman lain.

Kekurangan :

- Dibandingkan oleh beberapa framework lain lebih sulit dipahami kegunaan dari method yang ada.

- Mengirim e-mail melalui aplikasi buatan kita lebih rumit dari seharusnya.

- Terkadang routing terasa lebih ganjil apabila belum memahami secara sempurna metode routing pada laravel 4.

(31)

2.15. Learning Management System

Menurut situs http://www.businessnewsdaily.com/, Learning Management System adalah sebuah sumber daya yang kuat yang dapat membantu karyawan untuk fokus dalam pelatihan dan pengembangan profesional, baik untuk lembaga pegawai, perluasan sekolah, maupun perusahaan.

Lebih jauh lagi, situs http://www.businessnewsdaily.com/ membahas tentang komponen utama Learning Management System. Adapun komponen yang diperlukan adalah sebagai berikut :

• Kemampuan untuk membuat daftar kelas, mengatur registrasi, dan membuat daftar tunggu.

Kemampuan untuk meng-upload dan mengatur dokumen yang berisi bahan pembelajaran kurikulum.

• Kemampuan untuk menyampaikan isi dari mata pelajaran melalui tampilan berbasis web yang mengizinkan instruktor dan murid melakukan pengalaman belajar mengajar jarak jauh.

• Kemampuan untuk membuat dan mengumumkan kalender kuliah. • Kemampuan untuk membuat murid berinteraksi satu sama lain.

• Kemampuan untuk menentukan metode apa yang dilakukan untuk memberi penilaian kepada murid.

2.16. Internet

Internet adalah sekumpulan komputer yang semuanya terkoneksi satu sama lain atau disebut net. Ketika sebuah komputer terhubung dengan internet (online), maka komputer tersebut aka menjadi bagian dari internet dan terhubung dengan setiap komputer yang juga terhubung pada saat yang sama (Vermaat dan Shelly, 2011:56-57).

Internet adalah jaringan komputer yang dikembangkan oleh Departemen Pertahanan Amerika Serikat di tahun 1969 untuk keperluan militer. Melalui proyek ARPA yang disebut ARPANET (Advanced Research Project Agency Network), mereka mendemonstrasikan bagaimana dengan hardware dan software komputer yang berbasis UNIX, kita bisa melakukan komunikasi tanpa batasan jarak dengan menggunakan saluran telepon.

(32)

Pada mulanya ARPANET hanya menghubungkan 4 situs saja yaitu Stanford Research Institute, University of California, Santa Barbara, dan University of Utah, dimana mereka membentuk satu jaringan terpadu di tahun 1969, dan secara umum ARPANET diperkenalkan pada bulan Oktober 1972.

Dengan perkembangan jumlah pengguna internet yang besar, terciptalah budaya internet. Sebagai suatu budaya, internet mempunyai pengaruh yang besar atas ilmu dan pandangan dunia. Dengan hanya memakai mesin pencarian seperti Google, user di seluruh dunia mempunyai akses internet yang mudah untuk mendapat bermacam-macam informasi. Dibanding dengan buku dan perpustakaan, internet melambangkan penyebaran pengetahuan, informasi dan data secara ekstrem.

Gambar

Tabel 2. 1 Notasi Use-Case Diagram
Gambar 2. 2 Use-Case Narrative  (Sumber: Whitten &amp; Bentley (2007:257))
Gambar 2. 3 Expand Use-Case Narrative   (Sumber: Whitten &amp; Bentley (2007:259))
Gambar 2. 4 Conclusion of Expand Use-Case Narrative   (Sumber: Whitten &amp; Bentley (2007:260))
+7

Referensi

Dokumen terkait

Setiap individu harus memiliki sikap yang tegas untuk menunjukkan bahwa seseorang setuju atau tidak setuju terhadap sesuatu, seperti halnya pendapat yang dikemukakan oleh

Hasil wawancara dengan Ibu Itsna (pemilik adzkia hijab syari) berikut :” untuk kedala yang dialami oleh adzkia hijab syari adalah stock barang yang tidak dapat memenuhi pesanan

Model RNN tipe Elman untuk peramalan penjualan semen di PT Semen Indonesia (Persero) Tbk adalah model RNN tipe Elman (9-5-1) yang terbangun dari 9 neuron pada lapisan

Semestinya model kepemimpinan dari gerakan tersebut dapat belajar dari model socialized charismatic leadership , yang diperlengkapi dengan konsep teologis mengenai ekklesia

PENGUKURAN TINGKAT KAPABILITAS TEKNOLOGI E-LEARNING 4.0 DENGAN MENGGUNAKAN FRAMEWORK COBIT 5 PADA DOMAIN EDM, APO, DAN DSS (STUDI KASUS: UNIVERSITAS PEMBANGUNAN NASIONAL

15 Dwi Wahyu Ramadhana Akuntansi Universitas Brawijaya 16 febriansyah Agusman Abadi Geological Engineering Institut Teknologi Bandung 17 Fauzi Mahmuddin Geological

Meskipun belum ada hasil akhir dari revisi Perda KTR terkait pelarangan iklan tersebut dan bahkan telah lebih dari 3 kali sidang, namun hasil sementara dari sidang revisi pada

Biaya dan pengeluaran yang dikeluarkan oleh masing-masing Pihak , jika ada , yang timbul karena atau berhubungan dengan lingkup atau kegiatan kerja sama dimaksud