Senin, 23 September 2013

BAB 2 MODEL PROSES PERANGKAT LUNAK


  • Waterfall Model / Linear Sequential Model
Waterfall model adalah model yang melakukan pendekatan pada perkembangan perangkat lunak secara seistematik dan sekuensial. Yang artinya kegiatan pada model ini dilakukan secara terurut berdasarkan panduan proses mulai dari komunikasi kepada client atau pelanggan sampai dengan aktifitas sampai pengorderan setelah masalah dipahami secara lengkap dan berjalan stabil sampai selesai.

Ada 2 fase-fase dalam Waterfall model :
1. Menurut referensi Pressman

2. Menurut referensi Sommerville


Kedua fase-fase menggunakan nama yang berbeda pada tiap fasenya, tetapi pada dasarnya inti dari kedua fase-fase tersebut adalah sama. Tahapan-tahapan yang yang sering dijumpai adalah menurut refrensi dari Sommerville karena lebih terperinci perbedaan pada tiap fasenya.

a. Requirements definition
b. System and software design
c. Implementation and unit testing
d. Integration and system testing
e. Operation and maintenance

Kekurangan Waterfall model
Waterfall model bersifat kaku sehingga sulit untuk melakukan perubahan pada sistem perangkat lunak.
Pemakaian Waterfall model
Waterfall model digunakan untu pembuatan sistem perangkat lunak yang berukuran besardan pembuatannya secara terpisah.

  • Incremental Proses Model

A. The incremental model

Dalam model Incremental ini proses pengerjaan perangkat lunak akan dilakukan perbagian sehingga bagian selanjutnya akan dikerjakan setelah bagian awal telah selesai dan selanjutnya sampai menghasilkan perangkat lunak yang lengkap dengan semua fungsi yang diperlukan dan pengerjaan perangkat lunak berakhir. Sebelum pengerjaan perangkat lunak akan dilakukan perancangan arsitektur software sebagai kerangka dalam pengerjaan perbagian.

Tahapan dari Incremental Model :

Requirement -> penentuan kebutuhan perangkat lunak yang akan dibangun.
Specification -> spesifikasi bagian dari perangkat lunak.
Architecture Design -> pembuatan perancangan perangkat lunak (dasar dari kerangka kerja)

Kelebihan incremental model
1. Resiko yang rendah pada pengembangan sistem.
2. Mengutamakan fungsi-fungsi pada sistem perangkat lunak sehingga kemudahan pemakaian sistem yang paling di utamakan.
3. Tahap awal adalan dasar dari pembuatan tahap berikutnya (dikerjakan secara terurut)

B. The RAD model

RAD (Rapid Application Development) adalah model proses yang juga termasuk dalam Incremental Proses Model karena pembangunan dari sistem perangkat lunak dikerjakan dengan tahapan yang terurut mulai dari dasar (awal) sampai tahap paling tinggi (proses akhir pembuatan), tetapi perbedaan nya model ini dibagi menjadi beberapa modul dan dikerjakan secara besama-sama dan sesuai dengan waktu yang ditentukan.

Kelebihan RAD model :
Pengerjaan sistem yang cepat (60 -90 hari)
RAD dapat menggunakan kembali komponen yang ada (reusable object) sehingga pengembang pengembang tidak perlu membuat dari awal lagi.
Proses pengiriman menjadi lebih mudah karena proses pembuatan berupa potongan- potongan script

Kekurangan RAD model :
Tidak tepat untuk sistem yang berukuran besar.
Pembuatan sistem bisa gagal jika waktu kesepakatan tidak terpenuhi (terlalu cepat atau permintaan agar diselesaikan lebih cepat dari perjanjian).
Mempunyai banyak resiko karena dikerjakan dalam modul yang berbeda dan dalam waktu  yang hampir bersamaan dan pada tempat yang belum tentu sama.

  • Evolutionary Software Process Models

A. Protoyping Model

Protoyping Model adalah model yang dapat diterapkan pada model apapun. Model ini tidak memerlukan data yang lengkap dari sisi client dan banyaknya keraguan dari pembuat software karena kondisi yang belum diketahui (seberapa besar software, bagaimana sistem penerapannya). Model ini tepat digunakan jika pihak client menginginkan prototype dari software dalam waktu yang singkat. Dan prototype inilah yang akan menjadi acuan dari client untuk memberikan data kebutuhan yang lebih lengkap pada pembuat software (developer).

Kekurangan dalam model prototype :
1. Pada prototype tentu saja banyak kebutuhan yang tidak di tampilkan seluruhnya karena data yang dikumpulkan hanya sebagian.
2. Prototype yang di setujui oleh client harus dikembangkan oleh developer tanpa ada data tambahan dari client dan software dari prototype harus memiliki fungsi yang lengkap.
3.Banyak ketidak sesuaian pada bentuk prototype.

Model ini memerlukan kesepakatan antara client dan developer bahwa prototype hanya menjadi model dasa dari pembangunan software.
 
B. Spiral Model
 
Spiral model adalah model proses yang pendekatannya bersifat realistis pada software besar karena proses dari awal sampai proses pengiriman dan perbaikan dapat dipahami dnegan baik oleh clieent dan developer. Model ini mempunyai rangkaian kerja yang iterasi (peningkatan pada model) awal yang berbentuk prototype dan kemudian iterasiselanjutnya akan menjadi perkembangan dari model sebelumnya. Model ini dapat terus digunakan meskipun software sudah dikirimkan karena proses (siklus)dapat berputar lagi jika ada perubahan pada software sampai tidak ada permintaan perupbahan pada software oleh client.


Ada 6 pembagian proses pembuatan pada spiral model :
1. Komunikasi Pelanggan
2. Perencanaan
3.Analisis resiko
4.Perekayasaan
5.Konstruksi dan Peluncuran
6.Evaluasi Client

Kelebihan model Spiral :
  • Prescriptive Model Proses
Prescriptive model adalah model proses dasar yang dipakai seperti dengan aturan-aturan yang ditentukan agar dapat menghindari kesalahan dalam jadwal kegiatan kerja. Tetapi pada kenyataannya bahwa setiap proyek memiliki keadaan, situasi, dan kondisi yang berbeda dan akan sangat sulit jika hanya memiliki acuan terhadap aturan –aturan yang ditentukan sebelum proyek mulai dikerjakan.

  • Waterfall Model / Linear Sequential Model
Waterfall model adalah model yang melakukan pendekatan pada perkembangan perangkat lunak secara seistematik dan sekuensial. Yang artinya kegiatan pada model ini dilakukan secara terurut berdasarkan panduan proses mulai dari komunikasi kepada client atau pelanggan sampai dengan aktifitas sampai pengorderan setelah masalah dipahami secara lengkap dan berjalan stabil sampai selesai.

Ada 2 fase-fase dalam Waterfall model :
1. Menurut referensi Pressman

2. Menurut referensi Sommerville


Kedua fase-fase menggunakan nama yang berbeda pada tiap fasenya, tetapi pada dasarnya inti dari kedua fase-fase tersebut adalah sama. Tahapan-tahapan yang yang sering dijumpai adalah menurut refrensi dari Sommerville karena lebih terperinci perbedaan pada tiap fasenya.

a. Requirements definition
b. System and software design
c. Implementation and unit testing
d. Integration and system testing
e. Operation and maintenance

Kekurangan Waterfall model
Waterfall model bersifat kaku sehingga sulit untuk melakukan perubahan pada sistem perangkat lunak.
Pemakaian Waterfall model
Waterfall model digunakan untu pembuatan sistem perangkat lunak yang berukuran besardan pembuatannya secara terpisah.

  • Incremental Proses Model

A. The incremental model

Dalam model Incremental ini proses pengerjaan perangkat lunak akan dilakukan perbagian sehingga bagian selanjutnya akan dikerjakan setelah bagian awal telah selesai dan selanjutnya sampai menghasilkan perangkat lunak yang lengkap dengan semua fungsi yang diperlukan dan pengerjaan perangkat lunak berakhir. Sebelum pengerjaan perangkat lunak akan dilakukan perancangan arsitektur software sebagai kerangka dalam pengerjaan perbagian.

Tahapan dari Incremental Model :

Requirement -> penentuan kebutuhan perangkat lunak yang akan dibangun.
Specification -> spesifikasi bagian dari perangkat lunak.
Architecture Design -> pembuatan perancangan perangkat lunak (dasar dari kerangka kerja)

Kelebihan incremental model
1. Resiko yang rendah pada pengembangan sistem.
2. Mengutamakan fungsi-fungsi pada sistem perangkat lunak sehingga kemudahan pemakaian sistem yang paling di utamakan.
3. Tahap awal adalan dasar dari pembuatan tahap berikutnya (dikerjakan secara terurut)

B. The RAD model

RAD (Rapid Application Development) adalah model proses yang juga termasuk dalam Incremental Proses Model karena pembangunan dari sistem perangkat lunak dikerjakan dengan tahapan yang terurut mulai dari dasar (awal) sampai tahap paling tinggi (proses akhir pembuatan), tetapi perbedaan nya model ini dibagi menjadi beberapa modul dan dikerjakan secara besama-sama dan sesuai dengan waktu yang ditentukan.

Kelebihan RAD model :
Pengerjaan sistem yang cepat (60 -90 hari)
RAD dapat menggunakan kembali komponen yang ada (reusable object) sehingga pengembang pengembang tidak perlu membuat dari awal lagi.
Proses pengiriman menjadi lebih mudah karena proses pembuatan berupa potongan- potongan script

Kekurangan RAD model :
Tidak tepat untuk sistem yang berukuran besar.
Pembuatan sistem bisa gagal jika waktu kesepakatan tidak terpenuhi (terlalu cepat atau permintaan agar diselesaikan lebih cepat dari perjanjian).
Mempunyai banyak resiko karena dikerjakan dalam modul yang berbeda dan dalam waktu  yang hampir bersamaan dan pada tempat yang belum tentu sama.

  • Evolutionary Software Process Models

A. Protoyping Model

Protoyping Model adalah model yang dapat diterapkan pada model apapun. Model ini tidak memerlukan data yang lengkap dari sisi client dan banyaknya keraguan dari pembuat software karena kondisi yang belum diketahui (seberapa besar software, bagaimana sistem penerapannya). Model ini tepat digunakan jika pihak client menginginkan prototype dari software dalam waktu yang singkat. Dan prototype inilah yang akan menjadi acuan dari client untuk memberikan data kebutuhan yang lebih lengkap pada pembuat software (developer).

Kekurangan dalam model prototype :
1. Pada prototype tentu saja banyak kebutuhan yang tidak di tampilkan seluruhnya karena data yang dikumpulkan hanya sebagian.
2. Prototype yang di setujui oleh client harus dikembangkan oleh developer tanpa ada data tambahan dari client dan software dari prototype harus memiliki fungsi yang lengkap.
3.Banyak ketidak sesuaian pada bentuk prototype.

Model ini memerlukan kesepakatan antara client dan developer bahwa prototype hanya menjadi model dasa dari pembangunan software.
 
B. Spiral Model
 
Spiral model adalah model proses yang pendekatannya bersifat realistis pada software besar karena proses dari awal sampai proses pengiriman dan perbaikan dapat dipahami dnegan baik oleh clieent dan developer. Model ini mempunyai rangkaian kerja yang iterasi (peningkatan pada model) awal yang berbentuk prototype dan kemudian iterasiselanjutnya akan menjadi perkembangan dari model sebelumnya. Model ini dapat terus digunakan meskipun software sudah dikirimkan karena proses (siklus)dapat berputar lagi jika ada perubahan pada software sampai tidak ada permintaan perupbahan pada software oleh client.


Ada 6 pembagian proses pembuatan pada spiral model :
1. Komunikasi Pelanggan
2. Perencanaan
3.Analisis resiko
4.Perekayasaan
5.Konstruksi dan Peluncuran
6.Evaluasi Client

Kelebihan model Spiral :
Setiap tahap pengerjaan dibuat prototyping sehingga kekurangan dan apa yang diharapkan oleh client dapat diperjelas dan juga dapat menjadi acuan untuk client dalam mencari kekurangan kebutuhan.

Kekurangan model Spiral :
Banyak konsumen (Client) tidak percaya bahwa pendekatan secara evolusioner dapat dikontrol oleh kedua pihak. Model spiral mempunyai resiko yang harus dipertimbangkan ulang oleh konsumen dan developer.

C.Concurrent Development Model

Pada model ini aktifitas kerja dilakukan secara bersamaan, setiap proses kerja memiliki beberapa triger(pemicu) kerja dari aktifitas. Pemicu dapat berasal dari awal proses kerja maupun dari pemicu yang lain karena setiap trigrer akan sling berhubungan.
Misalnya proses Desain akan berubah atau berhenti sementara karena ada perubahan permintaan kebutuhan dari konsumen(client).

Kekurangan dari model ini:
Berhentinya suatu kegiatan karena kegiatan yang lain tentunya akan menyebabkan pengunduran waktu dari target yang ditentukan, yang artinya akan semakin banyak waktu yang ditunda untuk pengerjaan. Lebih lama proses pembuatan terhenti akan lebih banyak timbul masalah saat mulainya proses pembuatan setelah terhenti.

Tidak ada komentar:

Posting Komentar