Kamis, 25 Oktober 2012

Software Process Model

Untuk membuat sebuah software, ada beberapa model yang bisa kita gunakan yaitu Waterfall Model, Prototyping Model, Incremental Model, Spiral Model, dan RAD (Rapid Application Development).

  • WATERFALl MODEL
Model ini merupakan model proses pembuatan software yang sederhana dan merupakan model pengembangan paling lama digunakan. Model Waterfall ini cocok digunakan untuk sistem software berskala besar dan untuk sistem software yang bersifat generik. Software yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik. Tetapi, persyaratan sistem dan rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah karena sulit untuk mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan.

Langkah-langkah Waterfall Model adalah:
  1. Requirements Analysis and Definition : mengumpulkan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun.
  2. System and Software Design : desain dikerjakan setelah kebutuhan selesai dikumpulkan secara lengkap.
  3. Implementation and Unit Testing : desain program diterjemahkan ke dalam kode-kode dengan menggunakan bahasa pemograman yang sudah ditentukan. Program yang dibangun langsung diuji baik secara unit.
  4. Integration and System Testing : penyatuan unit-unit program kemudian diuji secara keseluruhan (system testing).
  5. Operation and Maintenance : mengoperasikan program dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau perubahan karena adaptasi dengan situasi sebenarnya.

  • PROTOTYPING MODEL 
Prototyping Model atau proses pengembangan perangkat lunak melalui mekanisme pembuatan prototip dari perangkat lunak sering digunakan bilamana terdapat permasalahan dalam menghimpun kebutuhan user atau user tidak dapat menggambarkan seperti apa kebutuhannya akan perangkat lunak.
Pengembang akan membuat protoip perangkat lunak berdasarkan gambaran awal atau analisa kebutuhan awal lalu dikomunikasikan kepada user. Proses berulang sampai user menyetujui prototip yang disetujui digunakan untuk menyususn requirement dan rancangan baru atau prototype dilanjutkan untuk menjadi perangkat lunak yang lengkap.

Langkah-langkah Prototyping Model adalah :
  1. Pengumpulan Kebutuhan, garis besar kebutuhan melibatkan pelanggan dan pengembang.
  2. Membangun Prototyping, membangun prototyping dengan perancangan sementara yang berfokus pada penyajian kepada pelanggan (mis: dengan membuat input dan format output).
  3. Evaluasi Prototyping.
  4. Mengkodekan Sistem, prototyping yang sudah disepakati diterjemahkan ke dalam bahasa pemograman yang sesuai.
  5. Menguji Sistem, setelah sistem jadi, perangkat lunak yang siap pakai harus dites. Pengujian dengan white box, black box, basis path, pengujian arsitektur,dll.
  6. Evaluasi Sistem.
  7. Menggunakan Sistem.


  • INCREMENTAL MODEL
Inceremental Model merupakan proses yang dirancang untuk menghasilkan perangkat lunak dengan teknik penambahan sedikit demi sedikit (incremental). Incremental Model menghasilkan serangkaian penambahan, yang disebut inkremen, yang memberikan fungsionalitas yang semakin baik kepada pelanggan saat masing-masing inkremen itu disampaikan. Dan ada juga yang mengatakan bahwa Incremental Model ini merupakan perbaikan dari Waterfall Model. 
Biasanya digunakan pada saat situasi dimana spesifikasi-spesifikasi kebutuhan perangkat lunak saat awal sudah terdefinisi dengan baik, tetapi lingkup keseluruhan usaha pengembangan perangkat lunak tidak bisa dilakukan secara linier. 

  • SPIRAL MODEL 
Model Spiral merupakan suatu model proses perangkat lunak evolusioner yang menggabungkan pendekatan prototyping yang bersifat iterative dengan aspek-aspek sistematis dan terkendali yang kita jumpai pada model air terjun (waterfall model). Model Spiral ini menyediakan kemungkinan untuk pengembangan perangkat lunak yang cepat, yang bergerak daei versi perangkat lunak yang kurang lengkap menjadi versi yang semakin lengkap. 
Menggunakan model spiral, perangkat lunak dikembangkan mengikuti sejumlah peluncuran produk yang bersifat evolusioner. Selama tahap yang lebih awal, produk/perangkat lunak yang diluncurkan mungkin berupa sebuah model atau suatu prototype. Pada langkah-langkah iterasi berikutnya versi-versi perangkat lunak semakin lengkap akan dihasilkan.

Langkah-langkah Spiral Model :
  1. Komunikasi.
  2. Perencanaan, pembuatan prakiraan-prakiraan , penjadwalan dan analisis terhadap risiko-risiko perangkat lunak.
  3. Permodelan, analisis perancangan.
  4. Konstruksi, penulisan kode-kode program.
  5. Penyerahan sistem/perangkat lunak , pengiriman umpan balik.
 
  • RAD (RAPID APPLICATION DEVELOPMENT)

Rapid application development (RAD) atau rapid prototyping adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat). RAD menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Rapid application development menggunakan metode iteratif (berulang) dalam mengembangkan sistem dimana working model (model bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) user dan selanjutnya disingkirkan. Working model digunakan kadang-kadang saja sebagai basis desain dan implementasi sistem final.

Model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat yang dicapai dengan menerapkan :
  1. Component based construction ( pemrograman berbasis komponen bukan prosedural).
  2. Penekanan pada penggunaan ulang (reuse) komponen perangkat lunak yang telah ada.
  3. Pembangkitan kode program otomatis/semi otomatis.
  4. Multiple team (banyak tim), tiap tim menyelesaikan satu tugas yang selevel tapi tidak sama. Banyaknya tim tergantung dari area dan kompleksitasnya sistem yang dibangun.
Jika keutuhan yang diinginkan pada tahap analisis kebutuhan telah lengkap dan jelas, maka waktu yang dibutuhkan untuk menyelesaikan secara lengkap perangkat lunak yang dibuat adalah berkisar 60 sampai 90 hari. Model RAD hampir sama dengan model waterfall, bedanya siklus pengembangan yang ditempuh model ini sangat pendek dengan penerapan teknik yang cepat.
Sistem dibagi-bagi menjadi beberapa modul dan dikerjakan beberapa tim dalam waktu yang hampir bersamaan dalam waktu yang sudah ditentukan. Model ini melibatkan banyak tim, dan setiap tim mengerjakan tugas yang selevel, namun berbeda. Sesuai dengan pembagian modul sistem. ( http://id.wikipedia.org/wiki/Rapid_Application_Development )

Sekian penjelasan singkat saya mengenai Model Proses Software.. ^^


Tidak ada komentar:

Posting Komentar