Portal My Passion

Test

Grafkom : Output Primitive (Lingkaran)

Contoh membuat lingkaran dengan r=32
midpoint

 

 

upload grafkom

*klik pada gambar untuk memperbesar*

Paradigma Pengembangan PL : Prototype

Well disini saya akan coba menjelaskan sedikit tentang paradigma pengembangan perangkat lunak dengan Prototype. Apa sih prototype? Apa sih keunggulannya dibanding dengan model lain? Trus, cocok nya digunakan untuk contoh kasus spt apa?

Apa sih Prototype?

Dahulu, rancangan fisik merupakan proses yang menggunakan kertas dan pinsil. Seorang analis mengambarkan tata letak atau struktur dari output, input, basis data, dan aliran hubungan dan prosedur. Ini merupakan proses yang memakan waktu yang memiliki kemungkinan terjadinya kesalahan. Biasanya hasil dari rancangan kertas ini adalah tidak lengkap dan tidak akurat. Sekarang, banyak analis dan perancang memilih Prototyping, sebuah pendekatan berbasis rekayasa (engineering) untuk merancang. Pendekatan Prototyping adalah proses iterative yang melibatkan hubunan kerja yang dekat antara perancang dan pengguna.

Pressman (2001) menyatakan bahwa seringkali seorang pelanggan mendefinisikan serangkaian sasaran umum bagi perangkat lunak, tetapi tidak mengidentifikasi kebutuhan input, pemrosesan, ataupun output detail. Pada kasus yang lain, pengembang mungkin tidak memiliki kepastian terhadap efisiensi algoritme, kemapuan penyesuaian dari sistem operasi, atau bentuk-bentuk yang harus dilakukan oleh interaksi manusia dan mesin. Dalam situasi seperti ini salah satu model yang cocok digunakan adalah model prototype (Prototyping paradigm). Model Prototype dapat dilihat pada gambar dibawah ini.

Prototype

Gambar 1 Prototype Paradigm

Pendekatan Prototyping melewati tiga proses, yaitu pengumpulan kebutuhan, perancangan, dan evaluasi Prototype.  Proses-proses tersebut dapat dijelaskan sebagai berikut:

  1. Pengumpulan kebutuhan: developer dan klien bertemu dan menentukan tujuan umum, kebutuhan yang diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya;
  2. Perancangan: perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang diketahui, dan rancangan ini menjadi dasar pembuatan prototype;
  3. Evaluasi Prototype: klien mengevaluasi prototype yang dibuat dan digunakan untuk memperjelas kebutuhan software.

Perulangan ketiga proses ini terus berlangsung hingga semua kebutuhan terpenuhi. prototype-prototype dibuat untuk memuaskan kebutuhan klien dan untuk memahami kebutuhan klien lebih baik. Prototype yang dibuat dapat dimanfaatkan kembali untuk membangun software lebih cepat, namun tidak semua prototype bisa dimanfaatkan. Sekalipun prototype memudahkan komunikasi antar developer dan klien, membuat klien mendapat gambaran awal dari Prototype.

Prototyping terbagi 2 yaitu:

  • Close ended prototyping (throw away), yaitu kondisi dimana prototyping hanya menyajikan demonstrasi kasar dan pemenujan requirements ntuk kemudian dibuang dan si pengembang akan menggunakan model yang berbeda.
  • Open ended prototyping (evolutionary), yaitu kondisi dimana prototyping menjadi bagian awal dari aktivitas analisis dan akan dilanjutkan hingga desain dan pengembangan. Jadi prototyping tersebut tidak dibuang/dibuat ulang, melainkan dikembangkan.

Strategi terpenting dalam membuat prototype yaitu:

  • Visual Prog -> Prototyping menggunakan program visual seperti visual basic, dll yang lebih sederhana dalam pengembangan  dan mudah dimengerti oleh pelanggan.
  • Re-use -> Prototyping yang dibuat harus bisa digunakan ulang, dengan kata lain dapat dikembangkan dan dapat digunakan pada pelanggan yang kasusnya hampir sama.

Jadi ketika sistem telah jadi dan ingin diubah, pembaruan mulai dilakukan pada tahap mengkodekan sistem. Kenapa tidak mulai dari awal? Karena prototype sudah disetujui ketika evaluasimya. Jadi pembuatan prototype tak perlu diulang lagi.

Kelebihan dan kekurangannya?

Pendekatan ini memiliki beberapa keuntungan :

  1. Pemodelan membutuhkan  partisipasi aktif dari end-user. Hal ini akan meningkatkan sikap dan dukungan pengguna untuk pengerjaan proyek. Sikap moral pengguna akan meningkat karena system berhubungan nyata dengan mereka.
  2. Perubahan dan iterasi merupakan konsekuensi alami dari pengembangan system-sehingga end user memiliki keinginan untuk merubah pola pikirnya. Prototyping lebih baik menempatkan situasi alamiah ini karena mengasumsikan perubahan model melalui iterasi kedalam system yang dibutuhkan.
  3. Prototyping mematahkan folosofi “end user tidak mengetahui secara detail apa yang dibutuhkan sampai mereka melihat implementasinya”
  4. Prototyping adalah model aktif, tidak pasif, sehingga end user dapat melihat, merasakan, dan mengalaminya.
  5. Kesalahan yang terjadi dalam prototyping dapat dideteksi lebih dini
  6. Prototyping dapat meningkatkan kreatifitas karena membolehkan adanya feedback dari end user.  Hal ini akan memberikan solusi yang lebih baik.
  7. Prototyping mempercepat beberapa fase hidup dari programmer.

McLeod dan Schell (2001) mengemukakan bahwa alasan-alasan pemakai maupun spesialis informasi menyukai model prototype adalah:

  1. Komunikasi antara analis sistem dan pemakai membaik;
  2. Analis dapat bekerja dengan lebih baik dalam menemukan kebutuhan pemakai;
  3. Pemakai berperan lebih aktif dalam pengembangan sistem;
  4. Spesialis informasi dan pemakai menghabiskan lebih sedikit waktu dan usaha dalam mengembangkan sistem;
  5. Implementasi menjadi lebih mudah karena pemakai mengetahui sistem yang diharapkan.

Tetapi, terdapat beberapa kelemahan dari prototyping, kelemahan tersebut antara lain :

  1. Prototyping memungkinkan terjadinya pengembalian terhadap kode, implementasi, dan perbaikan siklus hidup yang dugunakan untuk mendominasi sistem informasi.
  2. Prototyping tidak menolak kebutuhan dari fase analisis sistem. Prototype hanya dapat memecahkan masalah yang salah dan memberi kesempatan sebagai sistem pengembangan konvensional.
  3. Perancangan issu numerik tidak dialamaykan oleh prototyping. Isu tersebut dapat dilupakan jika pengguna tidak berhati-hati.
  4. Prototyping dapat mengurangi kreatifitas perancangan.

Prototyping terkadang dapat memberikan performansi yang lambat, membantu mendapatkan kebutuhan detil lebih baik namun demikian Prototype juga menimbulkan masalah:

  1. Dalam membuat prototype banyak hal yang diabaikan seperti efisiensi, kualitas,  kemudahan dipelihara/dikembangkan, dan kecocokan dengan lingkungan yang sebenarnya. Jika klien merasa cocok dengan prototype yang disajikan dan berkeras terhadap produk tersebut, maka developer harus kerja keras untuk mewujudkan produk tersebut menjadi lebih baik, sesuai kualitas yang seharusnya.
  2. Developer biasanya melakukan kompromi dalam beberapa hal karena harus membuat prototype dalam waktu singkat. Mungkin sistem operasi yang tidak sesuai, bahasa pemrograman yang berbeda, atau algoritma yang lebih sederhana.
  3. Agar model ini bisa berjalan dengan baik, perlu disepakati bersama oleh klien dan developer bahwa prototype yang dibangun merupakan alat untuk mendefinisikan kebutuhan software.

Paling tepat digunakan untuk kasus seperti apa?

Model ini sangat cocok digunakan apabila pelanggan belum tahu persis kebutuhannya, atau pelanggan tersebut kurang mampu mengungkapkan apa yang dibutuhkannya.

———————————————————————————————————————————

 

sumber : http://ali.misri07.alumni.ipb.ac.id/model-pengembangan-perangkat-lunak-prototyping/

http://evelynhartanto.wordpress.com/2012/11/12/lebih-mendalam-tentang-prototyping-model/

 

 

Pengenalan RPL

Rekayasa PErangkat Lunak (menurut dosen gue) itu direka-reka ameh tiasa. Membuat perangkat lunak a.k.a software itu pada awalnya berasal dari ide, lalu dikembangkan, diimajinasikan, direka-reka bagaimana tujuan dibuatnya software tsb, untuk siapa software tsb, apa saja yg dibutuhkan untuk membuat software tsb. Stlh, berimajinasi ingin membuat “suatu software”, maka timbulah Rekayasa Perangkat Lunak.

Rekayasa perangkat lunak (RPL, atau dalam bahasa Inggris: Software Engineering atau SE) adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas.

IEEE Computer Society mendefinisikan rekayasa perangkat lunak sebagai penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi atas pengembangan, penggunaan dan pemeliharaan perangkat lunak, serta studi atas pendekatan-pendekatan ini, yaitu penerapan pendekatan engineering atas perangkat lunak.[1]

rekayasa perangkat lunak adalah pengubahan perangkat lunak itu sendiri guna mengembangkan, memelihara, dan membangun kembali dengan menggunakan prinsip reakayasa untuk menghasilkan perangkat lunak yang dapat bekerja lebih efisien dan efektif untuk pengguna.

kriteria yang dapat digunakan sebagai acuan dalam merekayasa perangkat lunak:

1. dapat terus dirawat dan dipelihara(maintainability)

2. dapat mengikuti perkembangan teknologi(dependability)

3. dapat mengikuti keinginan pengguna(robust)

4. efektif dan efisien dalam menggunakan energi dan penggunaannya

5. dapat memenuhi kebutuhan yang diinginkan(usability)

Sumber : http://id.wikipedia.org/wiki/Rekayasa_perangkat_lunak

Bakalan panjang bgt klo disatuin untuk membahas RPL. Next, kita akan bahas model-model SDLC (Systems Development Life Cycle).

Grafika Komputer

Pengenalan Grafika Komputer

Grafika komputer adalah suatu bidang yang mempelajari bagaimana
menghasilkan suatu gambar menggunakan komputer. Sehingga di dalam grafika
komputer akan dibahas teknik-teknik menggambar.
Grafika komputer menghasilkan software-software disain grafis yang saat
ini sudah sangat canggih. Grafika komputer menghasilkan software dengan GUI
(graphics User Interface) yang memudahkan dan menyenangkan.
Grafika Komputer berbeda dengan pengolahan citra. Perbedaan diantara
keduanya adalah sebagai berikut :
a. Grafika Komputer
- Menghasilkan suatu gambar
- Berisi teknik-teknik menggambar
- Hasilnya gambar

b. Pengelolaan Citra:
- Mengolah suatu gambar
- Berisi teknik memperbaiki dan
- menyajikan informasi dari gambar
- Hasilnya bisa gambar atau informasi

untuk lebih jelas , bisa baca modul berikut ini Pengenalan Grafika Komputer