Sabtu, 24 April 2010

JENIS-JENIS PEMODELAN PENGEMBANGAN SISTEM

JENIS-JENIS PEMODELAN PENGEMBANGAN SISTEM

Daur Hidup Perangkat Lunak

Dalam membangun perangkat lunak diperlukan sebuah cara atau metodologi yang dijadikan sebagai panduan untuk mendapatkan perangkat lunak yang diharapkan.

Metodologi yang dapat digunakan antara lain :

1. Waterfall Method

System Engineering :
Menetapkan segala hal yang diperlukan dalam pelaksanaan proyek

Analisis :
Menganalisis hal-hal yang diperlukan untuk pembuatan atau pengembangan perangkat lunak

Gambar 1.1. Waterfall method

Analisis :
Menganalisis hal-hal yang diperlukan untuk pembuatan atau pengembangan perangkat lunak

Design :
Tahap penerjemahan dari keperluan atau data yang telah dianalisis ke dalam bentuk yang mudah dimengerti oleh programmer . Tiga atribut yang penting dalam proses perancangan yaitu : struktur data, arsitektur perangkat lunak dan prosedur rinci / algoritma.

Coding :
Menerjemahkan data yang telah dirancang / algoritma ke dalam bahasa pemrograman yang telah ditentukan

Testing :
Uji coba terhadap program telah dibuat .

Maintenance :
Perubahan atau penambahan program sesuai dengan permintaan user.

2. Prototyping Method
Pengumpulan Kebutuhan dan perbaikan
Menetapkan segala kebutuhan untuk pembangunan perangkat lunak
Disain cepat :

Tahap penerjemahan dari keperluan atau data yang telah dianalisis ke dalam bentuk yang mudah dimengerti oleh user.

Gambar 1.2. Protoyping Method

Bentuk Prototipe :
Menerjemahkan data yang telah dirancang ke dalam bahasa pemrograman (Program contoh atau setengah jadi )

Evaluasi Pelanggan Terhadap Prototipe :
Program yang sudah jadi diuji oleh pelanggan, dan bila ada kekurangan pada program bisa ditambahkan.

Perbaikan Prototype :
Perbaikan program yang sudah jadi, sesuai dengan kebutuhan konsumen. Kemudian dibuat program kembali dan di evaluasi oleh konsumen sampai semua kebutuhan user terpenuhi.

Produk Rekayasa :
Program yang sudah jadi dan seluruh kebutuhan user sudah terpenuhi

1. Four Generation Technology (4GT) Method

Requirement gathering : merupakan tahap mengumpulkan kebutuhan user dan menganalisa kebutuhan tersebut.

Design Strategi :
Merancang perangkat lunak sesuai dengan hasil analisa sebelumnya.

Gambar : 1.3. Four Generation Technology (4GT) Method

Implementation Using 4 Generation Language:
Melakukan pengkodean dengan bahasa generasi keempat ( Java, C++ ), secara otomatis sesuai dengan yang akan diterjemahkan ke program.

Testing :
Menguji perangkat lunak yang sudah jadi, dan disesuaikan dengan kebutuhan user.

4. Rapid Application Development (RAD) Method

Gambar : 1.4. Rapid Application Development (RAD) Method

Metodologi yang banyak digunakan untuk membangun perangkat lunak bisnis, dimana tahap awal merupakan anlisa terhadap kebutuhan bisnis saat ini, kemudian pengumpulan data untuk digunakan sebagai bahan perancangan sampai terbentuknya suatu perangkat lunak aplikasi yang membantu dalam pengambilan keputusan manajer.

SDLC,yang merupakan singkatan dari Software Development Life Cycle, sedang dibahas di kampus… Bagi yang kurang familiar dengan yang namanya SDLC, SDLC merupakan suatu metode yang digunakan oleh kebanyakan pengembang software dalam mengembangkan software tertentu, dengan tujuan menghindarkan adanya masalah-masalah yang muncul dalam pengerjaan dari project tersebut. Beberapa fase yang ada pada SDLC itu sendiri adalah : feasibility study, requirement analyis, design, coding, testing, dan maintenance.

Dalam mengembangkan aplikasi itu sendiri, SDLC memiliki beberapa metode, di antaranya :
1. Linear Model
Untuk menggunakan metode ini, user requirement yang ada
haruslah sudah dimengerti dengan baik oleh kedua belah pihak, sehingga tidak
akan terjadi pengulangan fase yang telah terlewati dalam perkembangan suatu
sistem.

Ada beberapa jenis yang dapat digunakan dalam metode ini, yaitu :
a. Waterfall Model
Menggambarkan proses software development dalam aliran sequential linear, sehingga, apabila suatu proses dalam perkembangan project belum terselesaikan, maka proses lain dalam project ini tidak dapat dimulai. Jika anda telah memasuki tahap selanjutnya dalam project ini, maka anda tidak bisa kembali ke tahap sebelumnya.
Biasanya waterfall model digunakan dalam project berskala kecil, ketika requirement ditentukan pada awal project. Biasanya model ini menganggap bahwa requirement dari user sudah tetap dan tidak akan berubah lagi.

b. Prototyping Model / Evolutionary Model
Model ini dikembangkan karena adanya kegagalan yang terjadi akibat pengembangan
project / aplikasi menggunkan sistem waterfall model. Kegagalan yang terjadi biasanya dikarenakan adanya kekurang pahaman atau bahkan sampai kesalah pahaman pengertian developer aplikasi mengenai user requirement yang ada.
Yang berbeda dari prototyping model ini, apabila dibandingkan dengan waterfall model, yaitu adanya pembuatan prototype dari sebuah aplikasi, sebelum aplikasi tersebut memasuki tahap design. Dalam fase ini, prototype yang telah dirancang oleh
developer akan diberikan kepada user untuk mendapatkan dievaluasi. Tahap ini akan terus menerus diulang sampai kedua belah pihak benar-benar mengerti tentang requirement dari aplikasi yang akan dikembangkan. Apabila prototype telah selesai, maka tahapan aplikasi akan kembali berlanjut ke tahap design dan kembali mengikuti langkah-langkah pada waterfall model. Kekurangan dari tipe ini adalah tim developer pengembang aplikasi harus memiliki kemampuan yang baik karna dalam mengembangkan prototype ini hanya terdapat waktu yang singkat.

2. Iterative Model
Metode yang merupakan pengembangan dari prototyping model dan digunakan ketika requirement dari software akan terus berkembang dalam tahapan-tahapan pengembangan aplikasi tersebut. Sedikit pengertian tentang requirement software dari
developer yang diterapkan pada tahap pertama iterasi, akan mendapatkan tanggapan dari user. Ketika requirement menjadi jelas, tahapan iterasi selanjutnya akan dilaksanakan.

Beberapa tipe dari Iterative Model di antaranya :
a. Spiral Model
Dikembangkan dari sifat iterative prototyping model dan sifat linier waterfall model. Merupakan model yang ideal bagi software yang memiliki bermacam jenis.
Dalam tiap iterasinya, proses software development mengikuti tahap-tahap fase linier, dan dalam akhir tiap fasenya, user mengevaluasi software tesrebut dan memberikan feed back. Proses iterasi berlangsung terus dalam pengembangan software tersebut.

b. Win Win Spiral Model
Dalam win win spiral model yang merupakan ekstensi dari spiral model, tim pengembang dan pelanggan akan melakukan diskusi dan negosiasi terhadap requirement-nya. Disebut win win karena merupakan situasi kemenangan antara tim pengembang dan pelanggan. Yang membedakan antara win win spiral model dan spiral model adalah setelah selesai mendapatkan feed back dari pelanggan, tim pengembang aplikasi dan pelanggan akan kembali melakukan negosiasi untuk perkembangan aplikasi tersebut.

c. Component Based Development Model
Dalam metode component based development ini, menitik beratkan pada penggunaan kembali dari komponen-komponen yang dibangun dalam sebuah aplikasi. Komponen di sini, dapat berupa fungsi tertentu atau sebuah kelompok yang berhubungan
dengan fungsi tertentu.

3. Incremental Model
Pada model ini, requirement software dipecah menjadi beberapa fungsi-fungsi atau bagian-bagian. Sebuah daftar kegiatan project akan dibuat dengan maksud mengetahui tiap-tiap fungsi yang harus dilakukan dalam tiap unit. Masing-masing unit fungsional
diimplementasikan dalam sebuah penambahan dan produk akhirnya dikembangkan setelah keseluruhan unit fungsional diimplementasikan dalam proses pengembangannya.
Masing-masing penambahan pada tiap unit terdiri dari 3 fase: design, implementasi, dan
analisis. Proses pengembangan ini akan terus diulang sampai keseluruhan akitivitas dalam daftar aktivitas diimplementasikan.
Kekurangan dari model ini bahwa model ini hanya dapat diimplementasikan pada project berskala besar, karena dalam prosesnya project yang dikerjakan harus dibagi dalam beberapa unit.

Tidak ada komentar: