Senin, 04 Mei 2015

Prototyping



Apa itu Prototyping?
Apa itu Prototyping?
Prototyping merupakan pelaksanaan analisa, perencanaan, dan fase implementasi secara bersamaan, dan berulang-ulang. Pengguna bisa melihat fungsionalitas sistem secara cepat dan menyediakan umpan balik. Selain itu, sebagai pengambil keputusan belajar tentang masalah. Tetapi bisa kehilangan kemajuan pada pengulangan.
Prototyping untuk pengembangan sistem pendukung keputusan yakni masalah semistruktur atau tidak terstruktur, bisa jadi manager dan pengembang tidak masalah secara lengkap. Keuntungan dari prototyping adalah waktu pengembangan pendek, reaksi waktu pengguna pendek, meningkatkan pemahaman dari pengguna, dan biaya murah. Contoh protyping yaitu Opening Vignette: InfoNet HR Portal System at Osram Sylvania.
Keunggulan prototyping adalah:
1. Adanya komunikasi yang baik antara pengembang dan pelanggan
2. Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan
3. Pelanggan berperan aktif dalam pengembangan sistem
4. Lebih menghemat waktu dalam pengembangan sistem
5. Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya.
Kelemahan prototyping adalah :
1. Pelanggan kadang tidak melihat atau menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas
perangkat lunak secara keseluruhan dan juga belum memikirkan kemampuan pemeliharaan untuk jangja waktu lama.

2. penegmbang biasanya ingin cepat menyelesaikan proyek. Sehingga menggunakan algoritma dan bahasa
pemrograman yang sederhana untuk membuat prototyping lebih cepat selesai tanpa memikirkan lebih lanjut bahwa
program tersebut hanya merupakan cetak biru sistem .

3. Hubungan pelanggan dengan komputer yang disediakan mungkin tidak mencerminkan teknik perancangan yang baik
Prototyping bekerja dengan baik pada penerapan-penerapan yang berciri sebagai berikut:
-         Resiko tinggi Yaitu untuk maslaha-masalah yang tidak terstruktur dengan baik, ada perubahan yang besar dari waktu ke waktu, dan adanya persyaratan data yang tidak menentu.
-         Interaksi pemakai penting.  Sistem harus menyediakan dialog on-line antara pelanggan dan komputer.
-         Perlunya penyelesaian yang cepat.
-         Perilaku pemakai yang sulit ditebak.
-         Sitem yang inovatif. Sistem tersebut membutuhkan cara penyelesaian masalah dan penggunaan perangkat keras yang mutakhir.
-         Perkiraan tahap penggunaan sistem yang pendek.

Rapid Prototyping
 Rapid Prototyping (RP) dapat didefinisikan sebagai metode-metode yang digunakan untuk membuat model berskala (prototipe) dari mulai bagian suatu produk (part) ataupun rakitan produk (assembly) secara cepat dengan menggunakan data Computer Aided Design (CAD) tiga dimensi. Rapid Prototyping memungkinkan visualisasi suatu gambar tiga dimensi menjadi benda tiga dimensi asli yang mempunyai volume. Selain itu produk-produk rapid prototyping juga dapat digunakan untuk menguji suatu part tertentu. Metode RP pertama ditemukan pada tahun 1986 di California, USA yaitu dengan metode Stereolithography. Setelah penemuan metode tersebut berkembanglah berbagai metode lainnya yang memungkinkan pembuatan prototipe dapat dilakukan secara cepat.
Saat ini, pembuatan prototipe menjadi syarat tersendiri pada beberapa perusahaan dalam upaya penyempurnaan produknya. Beberapa alasan mengapa rapid prototyping sangat berguna dan diperlukan dalam dunia industri adalah:
-         Meningkatkan efektifitas komunikasi di lingkungan industri atau dengan konsumen.
-         Mengurangi kesalahan-kesalahan produksi yang mengakibatkan membengkaknya biaya produksi.
-         Mengurangi waktu pengembangan produk.
-         Meminimalisasi perubahan-perubahan mendasar.
-         Memperpanjang jangka pakai produk misalnya dengan menambahkan beberapa komponen fitur atau mengurangi fitur-fitur yang tidak diperlukan dalam desain.
Rapid Prototyping mengurangi waktu pengembangan produk dengan memberikan kesempatan-kesempatan untuk koreksi terlebih dahulu terhadap produk yang dibuat (prototipe). Dengan menganalisa prototipe, insinyur dapat mengkoreksi beberapa kesalahan atau ketidaksesuaian dalam desain ataupun memberikan sentuhan-sentuhan engineering dalam penyempurnaan produknya. Saat ini tren yang sedang berkembang dalam dunia industri adalah pengembangan variasi dari produk, peningkatan kompleksitas produk, produk umur pakai pendek, dan usaha penurunan biaya produksi dan waktu pengiriman. Rapid prototyping meningkatkan pengembangan produk dengan memungkinkannya komunikasi yang lebih efektif dalam lingkungan industri.

Dimensi Prototyping
1. Penyajian


  • Bagaimana desain dilukiskan atau diwakili ?
·       Dapat berupa uraian tekstual atau dapat visual dan diagram.

2. Lingkup
·            Apakah hanya interface atau apakah mencakup komponen komputerisasi ?
3. Executability (Dapat dijalankan)
  • Dapatkah prototype tersebut dijalankan ?
  • Jika dikodekan, akan ada priode saat prototype tidak dapat dijalankan.

4. Maturation (Pematangan)
Apakah tahapan – tahapan proudk ini mengikuti ?
  • Revolusioner : mengganti yang lama.
  • Evolusioner : terus melakukan perubahan pada perancangan yang sebelumnya.

Metode Pembuatan Prototyping
Ada beberapa pembuatan prototype yaitu :
1. Metode non – komputer (manual)
  • Tujuan
Ingin menyatakan gagasan desain dan mendapatkan dengan mudah dan cepat pendapat atas system.
  • Deskripsi Desain
Dapat berupa deskripsi tekstual dari suatu desain system. Kelemahan yang nyata adalah seberapa jauh dari system yang sebenarnya dan tidak dapat melakukan pekerjaan yang mewakili aspek dari interface.
  • Sketsa, Mock ups
    • Paper based “menggambarkan” interface
    • Baik untuk mengungkapkan pendapat
    • Difokuskan pada orang dengan desain tingkat tinggi
    • Tidak terlalu baik untuk menggambarkan alur dan rinciannya
    • Murah dan cepat
    • umpan balik sangat menolong
  • Storyboarding
    • Pensil dan simulasi catatan atau walkthrough dari kemampuan dan tampilan system
    • Menggunakan urutan diagram / gambar
    • Menunjukkan kunci snap shots
    • Cepat dan mudah
  • Skenario
    • Hipotesis atau imajinasi penggunaan
    • Biasanya menyertakan beberapa orang, peristiwa, lingkungan dan situasi
    • Menyediakan konteks operasi
    •  
    • Terkadang dalam format naratif, tetapi juga dapat berupa sketsa atau bahkan video
    •  
  • Utilitias skenario
    • Melibatkan dan menarik
    • Menginjinkan perancang untuk melihat masalah dari pandangan orang lain
    • Memudahkan umpan balik dan pendapat
    • Dapat sangat kreatif dan futuristic

Terminologi dalam Prototyping
Metode Komputer

Terminologi :
a. Prototype Horizontal 
Sangat luas, mengerjakan atau menunjukkan sebagian besar interface, tetapi ini dilakukan dengan cara sangat baik.

b. Prototype Vertikal 
Lebih sedikit aspek atau fitur dari interface yang disimulasikan, tetapi dilaksanakan dengan rincian yang sangat baik.

c. Low – fidelity prototyping (prototype dengan tingkat ketepatan yang rendah)
  • Digunakan di awal disain.
  • Biasanya digunakan dengan skenario, lebih terinci, dan dapat diputar ulang.
  • Kumpulan dari sketsa individual.
  • Menyajikan urutan inti cerita.
  • Menunjukkan bagaimana kemungkinan user dapt mengalami peningkatan melalui setiap aktifitas.

    d. Mid – fidelity Prototyping (Prototype dengan tingkat ketepatan sedang)

  • Form skematik.
  • Navigasi dan fungsi yang disimulasikan →biasanya berbasis pada apa yang tampil pada layar atau simulasi layar.
  • Contoh tools yang digunakan : powerpoint, illustrator, dll.

e. High – fidelity prototyping (prototype dengan tingkat ketepatan yang tinggi)
  • Hi – fi prototype seperti system akhir.
  • Menggunakan bahan baku yang sama seperti produk akhir.
  • Tools umum yang digunakan : macromedia director, visual basic, flash, illustrator dll.
Metode Rapid Prototyping
Beberapa metode Rapid Prototyping yang berkembang saat ini adalah:
1.      Stereolithography (SLA)
2.      Selective Laser Sintering (SLS)
3.      Laminated Object Manufacturing (LOM)
4.      Fused Depsition Modelling (FDM)
5.      Solid Ground Curing (SGC)

Referensi :


DIALOG



Dialog dalam arti umum adalah percakapan antara dua kelompok atau lebih. Sedangkan dialog dalam konteks perencanaan user interface adalah struktur dari percakapan antara user dan sistem komputer.

A. Desain Dialog
Dalam mendesain sebuah dialog, diperlukan deskripsi yang terpisah dari program secara keseluruhan. Ada beberapa alasan yang mendasari hal tersebut, antara lain :

a. Agar lebih mudah dianalisa

b. Pemisahan elemen-elemen interface dari logika program (semantik)

c. Apabila notasi dialog ditulis sebelum program dibuat, maka notasi tersebut dapat membantu desainer untuk menganalisis struktur dialog yang diajukan, bahkan desainer juga dapat menggunakan prototyping tool untuk menguji dialog.

d. Notasi dialog dapat digunakan sebagai salah satu cara bagi anggota tim perancangan untuk mendiskusikan rancangan dialog dan pada akhirnya diberikan kepada programmer aplikasi.
Dialog dalam arti umum adalah percakapan antara dua kelompok atau lebih. Sedangkan dialog dalam konteks perencanaan user interface adalah struktur dari percakapan antara user dan sistem komputer. Bahasa Komputer dapat dibagi atas tiga tingkatan:

1. Leksikal

>> Merupakan tingkatan yang paling rendah.

>> Yaitu bentuk icon pada layar.

>> Pada bahasa manusia, ekuivalen dengan bunyi dan ejaan suatu kata.

2. Sintaksis

>> yaitu urutan dan struktur dari input dan output.

>> Pada bahasa manusia, ekuivalen dengan grammar suatu kalimat.

3. Semantik

>> yaitu arti dari percakapan yang berkaitan dengan pengaruhnya padastruktu
internal komputer dan/atau dunia eksternal.

>> Pada bahasa manusia, ekuivalen dengan arti yang berasal dari partisipan dalam

percakapan.

c. User Interface Software

PRINSIP-PRINSIP DESAIN ANTARMUKA

* Merefleksikan model mental user

: Merefleksikan kombinasi pengalaman dunia riil, pengalaman dari software lain dan penggunaan komputer secara umum.Dalam user interface, istilah dialog hampir mirip dengan tingkat sintaksis, tetapi juga meliputi sifat-sifat leksikal.
b. Dialogue Style
Ragam Dialog (DIalogue Style) adalah cara yang digunakan untuk mengorganisasikan berbagai tehnik dialog.

Beberapa sifat penting yang perlu dimiliki oleh setiap ragam dialog adalah:

1. Inisiatif

Inisiatif merupakan sifat dasar dari sembarang dialog, karena inisiatif akan menentukan keseluruhan ragam komunikasi sehingga dapat ditentukan tipe-tipe pengguna yang dituju oleh sistem yang dibangun. Dua jenis inisiatif yang paling sering digunakan adalah inisiatif oleh komputer dan inisiatif oleh pengguna. Dalam inisiatif oleh komputer, pengguna memberikan tanggapan atas prompt yang diberikan oleh komputer untuk memasukkan perintah atau parameter perintah, biasanya berupa serangkaian pilihan yang harus dipilih (pilihan menu), atau sejumlah kotak yang dapat diisi dengan suatu nilai parameter (seperti pengisian borang), atau suatu pertanyaan yang jawabannya harus dinyatakan dengan cara tertentu, misalnya dengan ya/tidak atau dengan bahasa alamiah. Karakteristik utamanya adalah bahwa dialog itu terdiri atas sekumpulan pilihan yang telah didefinisikan sebelumnya. Sebaliknya, inisiatif oleh pengguna mempunyai sifat keterbukaan yang lebih luas: pengguna diharapkan memahami sekumpulan perintah yang harus ditulis menurut aturan (sintaks) tertentu.

2. Keluwesan

Sistem yang luwes atau fleksibel adalah sistem yang mempunyai kemampuan untuk mencapai suatu tujuan lewat sejumlah cara yang berbeda. Karakteristik penting dalam mencapai keluwesan suatu sistem adalah bahwa sistem harus dapat menyesuaikan diri dengan keinginan pengguna dan bukan pengguna harus menyesuaikan diri dengan kerangka sistem yang telah ditetapkan oleh perancang sistem. Keluwesan juga dapat dilihat dari adanya kesempatan bagi pengguna untuk melakukan customizing dan memperluas antarmuka dari sebuah sistem untuk memenuhi kebutuhan pribadinya.

3. Kompleksitas

Seorang perancang sistem tidak perlu membuat atau menggunakan antarmuka lebih dari apa yang diperlukan, karena tidak ada keuntungan yang dapat diperoleh, malahan akan menjadikan implementasinya menjadi lebih sukar.

4. Kekuatan

Kekuatan didefinisikan sebagai jumlah kerja yang dapat dilakukan oleh sistem untuk setiap perintah yang diberikan oleh pengguna.

5. Beban Informasi

Agar penyampaian informasi itu dapat berdaya guna dan berhasil guna, beban informasi yang terkandung didalam suatu ragam dialog seharusnya disesuaikan dengan tingkat pengguna. Jika beban itu terlalu tinggi, pengguna akan merasa sangat terbebani yang akan berakibat negatif dalam hal kemampuan pengolahan kognitif dan tingkah laku pengguna akan merasa bahwa sistemnya seolah-olah menyembunyikan kinerja penggunanya sendiri.

6. Konsistensi

Konsistensi harus diterapkan pada perancangan antarmuka pengguna. Contoh pada format pemasukan data dan format tampilan data.

7. Umpan Balik

Pada program komputer yang tidak ramah, pengguna sering harus menunggu proses yang yang sedang berjalan, sementara pengguna tidak mengetahui status proses saat itu, apakah sedang melakukan komputasi, sedang mencetak hasil, atau bahkan komputernya macet (hang) karena suatu sebab. Program yang baik akan selalu memberikan umpan balik kepada pengguna atas apa yang dikerjakan saat itu.

8. Observabilitas

Sistem dikatakan mempunyai sifat observabilitas apabila sistem itu berfungsi secara benar dan nampak sederhana bagi pengguna meskipun sesungguhnya pengolahan secara internalnya sangat rumit.

9. Kontrolabilitas

Kontrolabilitas merupakan kebalikan dari observabilitas, dan hal ini berimplikasi bahwa sistem selalu berada dibawah kontrol pengguna. Agar hal ini tidak tercapai, antarmukanya harus mempunyai sarana yang memungkinkan pengguna untuk dapat melakukan kendali.

10. Efisiensi

Efisiensi dalam sistem komputer yang melibatkan unjuk kerja manusia dan komputer secara bersama-sama adalah hasil yang diperoleh dari kerjasama antara manusia dan komputer. Sehingga, meskipun efisiensi dalam aspek rekayasa perangkat lunak sistem menjadi sangat penting jika mereka berpengaruh pada waktu tanggap atau laju penampilan sistem, seringkali perancang lebih memilih untuk memanfaatkan hasil teknologi baru untuk meminimalkan ongkos pengembangan sistem. Sebaliknya, tidak dapat dipungkiri bahwa biaya personal dari seorang ahli akan semakin meningkat dari waktu ke waktu.

11. Keseimbangan

Strategi yang diambil dalam perancangan sistem manusia komputer haruslah dapat membagi-bagi pekerjaan antara manusia dan komputer seoptimal mungkin. Manusia dapat menangani persoalan yang berurusan dengan perubahan lingkungan, pengetahuan yang tidak pasti dan tidak lengkap, sementara komputer lebih cocok untuk pekerjaan yang bersifat perulangan dan rutin, penyimpanan dan pencarian kembali data secara handal dan memberikan hasil komputasi yang sangat akurat dalam hal pengolahan numerik dan logika. Tabel berikut menunjukkan kecakapan relatif manusia dan komputer

* Explicit and Implicit Action

: Explicit Action adalah kondisi yang jelas dalam memberikan petunjuk untuk memanipulasi suatu obyek.

: Implicit Action adalah kondisi yang hanya memberikan kesan visual untuk memanipulasi obyek

* Direct Manipulation
: User mendapatkan dampaknya dengan segera setelah melakukan suatu aksi

* User Control

: mengijinkan user mengontrol dan menginisialisasi aksi

* Feedback and Communication

: selalu memberitahukan user apa yang terjadi dari suatu aksi.

* Consistency

: user dapat mentransfer pengetahuan dan kemampuan dari suatu aplikasi ke aplikasi lain

* WYSYWIG (What You See Is What You Get)

: tidak ada perbedaan antara yang dilihat di layar dengan hasil outputnya.

* Aesthetic Integrity

: informasi diorganisasikan dengan baik dan konsisten dengan prinsip desain visual yang baik.

MENGEMBANGKAN SOFTWARE YANG BAIK

Untuk mengembangkan software yang baik dibutuhkan beberapa faktor yang dibutuhkan, yaitu:

High Performance –> software yang dibuat mempunyai performance yang tinggi, walaupun digunakan oleh beberapa user.

Mudah digunakan –> software yang dibuat mempunyai sifat easy to use(mudah digunakan) sehingga tidak membutuhkan proses yang lama untuk mempelajarinya.

Penampilan yang baik–> software mempunyai antarmuka (interface) yang baik, sehingga user tidak merasa jenuh.

Reliability –> kehandalan, sejauh mana suatu software dapat diharapkan untuk melakukan fungsinya sesuai dengan ketelitian yang diperlukan.

Mampu beradaptasi –> sejauh mana software yang dibuat mampu beradaptasi dengan perubahan-perubahan teknologi yang ada.

Interoperability –> software yang dibuat haruslah mampu berinteraksi dengan aplikasi lain. Biasanya dapat dilihat dari adanya fasilitas untuk eksport dan import data dari aplikasi lain.

Mobility –> software yang dibuat dapat berjalan pada bermacam-macam sistem operasi.

MENGAMBIL KEPUTUSAN DALAM DESAIN

Dalam desain sebuah software ada beberapa hal yang harus diambil sebuah keputusan jika terjadi sesuatu seperti berikut:

1. Aplikasi semakin membesar dan menjadi semakin lambat

2. User interface pada aplikasi semakin kompleks

3. Waktu yang diperlukan untuk mengembangkan fitur baru menjadi lebih lama

4. Dokumentasi aplikasi dan dokumen help menjadi lebih melebar.

5. Resiko adanya efek pada fitur yang sudah ada

6. Meningkatkan waktu yang diperlukan untuk memvalidasi aplikasi

MENDESAIN LAYOUT MODEL APLIKASI

Ada 3 macam model aplikasi:

1. Berbasis Dokumen –> Aplikasi ini menghasilkan sebuah dokumen berupa file-file yang nantinya bisa dibuka dan dirubah kembali jika perlu. Aplikasi yang berbasis dokumen misalnya: Microsoft Word, Microsoft Excel, Open Office, Corel Draw, Photoshop, dll.

2. Berbasis Non Dokumen –> Aplikasi ini sifatnya tidak menghasilkan dokumen yang bisa dibuka dan dirubah kembali. Contoh dari aplikasi berbasis non dokumen ini adalah: Microsoft Outlook, MySQL, MYOB, dll

3. Utilitas –> Aplikasi ini sifatnya adalah untuk penunjang saja (sifatnya hanya tambahan). Ada kecenderungan aplikasi seperti ini menekankan pula pada style disamping fitur aplikasi. Contoh dari aplikasi ini adalah seperti aplikasi untuk mendengarkan musik atau menonton video (Winamp, Media Player, PowerDVD), aplikasi untuk anti virus (Kaspersky, Norton, F-Secure).

Sumber :


Pengikut