Prototyping

Overview
Prototyping merupakan sebuah teknik yang sudah terkenal dan biasa digunakan pada bidang rekayasa & perencanaan di mana produk baru dievaluasi melalui tes terhadap prototype dari model produk tersebut. Prototype dapat “dibuang” jika gagal, atau dapat juga dikembangkan lebih lanjut jika potensial. Dalam konteks rekayasa perangkat lunak, prototype terdiri dari : – paper-based prototype (berbasis kertas/sketsa) – software-based prototype (berbasis perangkat lunak)

Karakteristik Prototyping
Merupakan elemen penting dalam proses desain yang berorientasi user
·         Berupa proses desain yang bersifat eksperimental dan parsial
·         Melibatkan end-user
·         Biasa dilakukan pada tahap awal pengembangan sistem
·         Biasa diterapkan pada semua proses model RPL
·         Tiap tahapan pengembangan dapat menggunakan jenis prototype yang berbeda-beda.

Apa itu prototype ?
Pada tahapan desain interaksi, prototype dapat berupa :
·         Sketsa screen/ interface
·         Video yang mensimulasikan kegunaan
·         Storyboard yang menggambarkan urutan proses
·         Slide PowerPoint
·         Perangkat lunak tahap awal dengan fungsionalitas yang terbatas

Mengapa Harus Ada Prototype?
·         RPL secara tradisional: evaluasi hanya dilakukan setelah sistem diimplementasi
·         Tahapan implementasi membutuhkan biaya, waktu, dan energi yang banyak (mahal) sehingga dibutuhkan resource yang banyak untuk memperbaiki error yang ditemukan.
·         Hasil 1 : error diperbaiki, di mana dalam hal ini dibutuhkan biaya, waktu, dan energi yang tidak sedikit.
·         Hasil 2 : error dibiarkan, melimpahkan beban kepada user.

Alur proses prototyping
·         Buat prototype dengan fungsionalitas terbatas
·         Evaluasi prototype tersebut, sehingga akan ditemukan error
·         Perbaiki/ koreksi error
·         Proses di atas di ulang sampai error minimal

Apa yang biasanya dibuat prototype-nya?
·         Alur kerja sistem, desain
·         Layout layar dan desain tampilan informasi
·         Area/ bagian interface yang penting

Low-fidelity Prototyping
Menggunakan media yang berbeda dengan hasil akhirnya, misalnya kertas. • Cepat, murah, dan mudah untuk dirubah
·         Contoh : sketsa layar interface, alur proses sistem etc ‘Post-it’ notes storyboard

High-fidelity prototyping
·         Menggunakan material/ bentuk yang sama dengan produk akhirnya.
·         Prototype kelihatan lebih mirip dengan sistem yang dirancang.
·         Biasanya membutuhkan tool atau perangkat lunak khusus.

Rapid Prototyping
·         Bertujuan untuk mendapatkan spesifikasi kebutuhan pada tahap awal pengembangan sistem
·         Untuk mengantisipasi pengguna yang tidak bisa mendefinisikan kebutuhan secara mandiri
·         Dapat memakan waktu yang lama

Incremental Prototyping
·         Prototype yang dibuat dalam bentuk modul-modul yang terpisah
·         Cocok untuk sistem skala besar, cakupannya luas
·         Masing-masing prototype dari subsistem dirancang dan dievaluasi secara terpisah, namun pada akhirnya akan digabung menjadi sebuah sistem besar yang utuh.
·         Membutuhkan pemahaman konteks fungsionalitas sistem secara menyeluruh

Evolutionary prototyping – RAD
·         Mirip dengan incremental prototyping, namun tidak dilakukan pemisahan, prototype dibuat dalam bentuk sebuah sistem yang utuh
·         Dapat memakan waktu yang cukup lama jika kompleksitas sistem tinggi
·         Prototype akan semakin mengarah ke sistem jadi seiiring dengan tahapan proses pengembangan sistem.

Bentuk prototype yang lain
·         Horizontal prototype
·         Vertical prototype

Evaluasi
·         Semua bentuk prototype harus dievaluasi
·         Evaluasi merupakan komponen penting dalam proses desain yang berorientasi pengguna
·         Evaluasi berguna untuk mendapatkan tanggapan terhadap prototype sistem yang sudah dibuat.