Local News Simsalabim IndonesiaSDS
Local News Simsalabim Indonesia Clicking Here!
Sahabat Sukses
Salam sahabat
News
Reviews
Typography
Blog
Videos
Page
0
0
0Share
Widgets
Analisis Perbandingan Generic Software Process Model
Diposting oleh Mahmud Yunus , 23.47 Be the first to comment!
Pada kesempatan kali ini kelompok kami akan menganalisis perbandingan Generic Software
Process Model, sedikit singkat dan hampir mendekati. Ada 4 Software Process Model : Waterfall
Model, Spiral Model, Prototyping Model, Incremental Model.
1.
Waterfaal Model
Pada gambar disamping adalah tahapan umum dari model proses ini. Akan tetapi Roger S.
Pressman memecah model ini menjadi 6 tahapan meskipun secara garis besar sama
dengan tahapan-tahapan model waterfall pada umumnya. Berikut adalah penjelasan dari
tahap-tahap yang dilakukan di dalam model ini menurut Pressman System / Information
Engineering and Modeling. Permodelan ini diawali dengan mencari kebutuhan dari
keseluruhan sistem yang akan diaplikasikan ke dalam bentuk software. Hal ini sangat
penting, mengingat software harus dapat berinteraksi dengan elemen-elemen yang lain
seperti hardware, database, dsb. Tahap ini sering disebut dengan Project Definitiona.
Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan difokuskan
pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para software
engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang
dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan
software) harus didokumentasikan dan ditunjukkan kepada pelanggan.
Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi
representasi ke dalam bentuk “blueprint” software sebelum coding dimulai. Desain harus
dapat mengimplementasikan kebutuhan yang telah disebutkan pada tahap sebelumnya.
Seperti 2 aktivitas sebelumnya, maka proses ini juga harus didokumentasikan sebagai
konfigurasi dari software.
Coding. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi
harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam
bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap
design yang secara teknis nantinya dikerjakan oleh programmer.
Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan
software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari error,
dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan
sebelumnya.
Maintenance. Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah
pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika
dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada
penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan diperlukan
ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem
operasi, atau perangkat lainnya.
Kekurangan yang utama dari model ini adalah kesulitan dalam mengakomodasi perubahan
setelah proses dijalani. Fase sebelumnya harus lengkap dan selesai sebelum mengerjakan
fase berikutnya.
Masalah dengan waterfall :
1. Perubahan sulit dilakukan karena sifatnya yang kaku.
2. Karena sifat kakunya, model ini cocok ketika kebutuhan dikumpulkan secara lengkap
sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada kenyataannya jarang sekali
konsumen/pengguna yang bisa memberikan kebutuhan secara lengkap, perubahan
kebutuhan adalah sesuatu yang wajar terjadi.
3. Waterfall pada umumnya digunakan untuk rekayasa sistem yang besar dimana proyek
dikerjakan di beberapa tempat berbeda, dan dibagi menjadi beberapa bagian sub-proyek
Kelebihan dan Kekurangan Waterfall Model
Kelebihan :
Merupakan model pengembangan paling handal dan paling lama digunakan.
Cocok untuk system software berskala besar.
Cocok untuk system software yang bersifat generic.
Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan :
Persyaratan system harus digambarkan dengan jelas.
Rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah.\Sulit untuk
mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan.
2. Iterative Model/Spiral Model
Proses digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process.
Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari
kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi
menjadi beberapa sektor :
1. Objective settings (menentukan tujuan) : menentukan tujuan dari fase yang ditentukan.
Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan
berdasarkan resiko-resiko yang diketahui, dan sudah direncanakan.
2. Risk assessment and reduction (Penanganan dan pengurangan resiko) : setiap resiko
dianalisis secara detil pada sektor ini. Langkahlangkah penanganan dilakukan, misalnya
membuat prototype untuk mengetahui ketidakcocokan kebutuhan.
3. Development and Validation (Pembangunan dan pengujian) : Setelah evaluasi resiko,
maka model pengembangan sistem dipilih. Misalnya jika resiko user interface dominan,
maka membuat prototype User Interface. Jika bagian keamanan yang bermasalah, maka
menggunakan model formal dengan perhitungan matematis, dan jika masalahnya adalah
integrasi sistem model waterfall lebih cocok.
4. Planning : Proyek dievaluasi atau ditinjau-ulang dan diputuskan untuk terus ke fase loop
selanjutnya atau tidak. Jika melanjutkan ke fase berikutnya rencana untuk loop
selanjutnya.
Pembagian sektor tidak bisa saja dikembangkan seperti pada pembagian sektor berikut
pada model variasi spiral di bawah ini:
3. Prototyping Model
Kadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detil input,
proses atau detil output. Di lain waktu mungkin dimana tim pembangun (developer) tidak yakin
terhadap efisiensi dari algoritma yang digunakan, tingkat adaptasi terhadap sistem operasi atau
rancangan form user interface. Ketika situasi seperti ini terjadi model prototyping sangat
membantu
proses
pembangunan
software.
Proses pada model prototyping yang digambarkan pada gambar 1, bisa 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. Detil kebutuhan mungkin tidak dibicarakan disini, pada awal pengumpulan
kebutuhan.
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, 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.
Agar model ini bisa berjalan dengan baik, perlu disepakati bersama oleh klien dan developer
bahwa prototype yang dibangun merupakan alat untuk mendefinisikan kebutuhan software.
Kelebihan dan Kekurangan Prototyping Model
Kelebihan :
Prototype melibatkan user dalam analisa dan desain.
Punya kemampuan menangkap requirement secara konkret daripada secara abstrak.
Untuk digunakan secara standalone.
Digunakan untuk memperluas SDLC.
Mempersingkat waktu pengembangan Sistem Informasi
Kekurangan :
Tidak ada cara untuk mengetahui banyaknya iterasi yang diperlakukan.
Proses analisis dan perancangan terlalu singkat.
Mengesampingkan alternatif pemecahan masalah.
Bisanya kurang fleksible dalam mengahdapi perubahan.
Protitype yang dihasilkan tidak selamanya mudah dirubah
Protype terlalu cepat selesai
1. Customer communication : membangun komunikasi yang baik dengan
pengguna/customer.
2. Planning : mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar
proyek
3. Risk analysis : identifikasi resiko managemen dan teknis
4. Engineering : pembangunan contoh-contoh aplikasi, misalnya prototype
5. Construction and release : pembangunan, test, install dan support.
6. Customer evaluation : mendapatkan feedback dari pengguna beradasarkan evaluasi PL
pada fase engineering dan fase instalasi. Pada model spiral, resiko sangat
dipertimbangkan. Resiko adalah sesuatu yang mungkin mengakibatkan kesalahan.
Model spiral merupakan pendekatan yang realistik untuk PL berskala besar. Pengguna dan
pembangun bisa memahami dengan baik software yang dibangun karena setiap kemajuan yang
dicapai selama proses dapat diamati dengan baik. Namun demikian, waktu yang cukup panjang
mungkin bukan pilihan bagi pengguna, karena waktu yang lama sama dengan biaya yang lebih
besar.
Kelebihan dan Kekurangan Iterative Model
Kelebihan :
Dapat mengakomodasi jika terjadi perubahan pada tahapan pengembangan yang telah
dilaksanakan.
Dapat disesuaikan agar system bisa dipakai selama hidup software computer.
Cocok untuk pengembangan sistem dan perangkat lunak skala besar.
Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko
setiap tahapan karena system terus bekerja selama proses.
Kekurangan :
Hanya berlaku untuk Short-Lifetime system.
Tahapan proses tidak terlihat sedang berada ditahapan mana suatu pekerjaan.
Memerlukan alat ukur kemajuan secara regular.
Perubahan yang sering terjadi dapat merubah struktur system.
Memerlukan tenaga ahli dengan kemampuan tinggi.
4.
Incremental
Mode
1. kombinasikan element-element dari waterfall dengan sifat iterasi/perulangan.
2. element-element dalam waterfall dikerjakan dengan hasil berupa produk dengan
spesifikasi tertentu, kemudian proses dimulai dari fase pertama hingga akhir dan
menghasilkan produk dengan spesifikasi yang lebih lengkap dari yang sebelumnya.
Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan
oleh pengguna.
3. produk hasil increment pertama biasanya produk inti (core product), yaitu produk yang
memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau menjalani
review/pengecekan detil. Hasil review tersebut menjadi bekal untuk pembangunan pada
increment berikutnya. Hal ini terus dikerjakan sampai produk yang komplit dihasilkan.
4. model ini cocok jika jumlah anggota tim pengembang/pembangun PL tidak cukup.
5. Mampu mengakomodasi perubahan secara fleksibel.
6. Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang
sudah bisa berfungsi dengan spesifikasi dasar.
Masalah dengan Incremental model :
1. cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding).
2. mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana
spesifikasi masing-masing hasil increment.
Kelebihan dan Kekurangan Incremental Model
Kelebihan Incremental Model
Personil bekerja optimal
Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan
Mengurangi trauma karena perubahan sistem.
Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian
Memaksimalkan pengembalian modal investasi konsumen
Kekurangan Incremental Model
kemungkinan tiap bagian tidak dapat diintegrasikan
Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat
perubahan selama proses rekayasa berlangsung
Harus Open Architecture
Process pengembangan perangkat lunak (Software development process) adalah
suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak
yang bertujuan untuk mengembangkan sistem dan memberikan panduan yang
bertujuan untuk menyukseskan proyek pengembangan sistem melalui tahap demi
tahap. Proses ini memiliki beberapa model yang masing-masing menjelaskan
pendekatan terhadap berbagai tugas atau aktivitas yang terjadi selama proses.
Contoh model proses pengembangan perangkat lunak antara lain adalah proses
iteratif, Extreme Programming, serta proses air terjun (waterfall)
SHARE THIS POST
Author: Mohammad
Mohammad is the founder of STC Network which offers Web Services and Online Business
Solutions to clients around the globe. Read More →
Related Posts:
0 komentar:
Posting Lebih BaruPosting LamaBeranda
Total Tayangan Halaman
988
Subscribe now!
1807+ People Following SS
Join
RSS
Facebook
Twitter
Stay Updated via Email Newsletter
Popular Posts
Analisis Perbandingan Generic Software Process Model
Generic View Of Software Engineering
RPL (Rekayasa Perangkat Lunak)
Software Process
Syarat Untuk Sukses
Archive
Su
Mo
Tu
We
◄ View Archive
Custom Text Widget
Th
Fr
Sa
Social Icons
Follow us on Facebook
Follow us on Twitter
Follow us on Google+
Follow us on Pinterest
Subscribe with RSS
Followers
About Me
Mahmud Yunus
Lihat profil lengkapku
Featured Posts
Latest Posts
Video
Recent Comments
Home
Typography
Sitemap
Services
Contact
Back to top
ABOUT
Local News Simsalabim Indonesia Clicking Here!
Sahabat Sukses
Salam sahabat
News
Reviews
Typography
Blog
Videos
Page
0
0
0Share
Widgets
Analisis Perbandingan Generic Software Process Model
Diposting oleh Mahmud Yunus , 23.47 Be the first to comment!
Pada kesempatan kali ini kelompok kami akan menganalisis perbandingan
Software Process Model, sedikit singkat dan hampir mendekati. Ada 4 Software Process Model :
Waterfall Model, Spiral Model, Prototyping Model, Incremental Model.
1.
Waterfaal Model
Pada gambar disamping adalah tahapan umum dari model proses ini. Akan tetapi Roger S.
Pressman memecah model ini menjadi 6 tahapan meskipun secara garis besar sama
dengan tahapan-tahapan model waterfall pada umumnya. Berikut adalah penjelasan dari
tahap-tahap yang dilakukan di dalam model ini menurut Pressman System / Information
Engineering and Modeling. Permodelan ini diawali dengan mencari kebutuhan dari
keseluruhan sistem yang akan diaplikasikan ke dalam bentuk software. Hal ini sangat
penting, mengingat software harus dapat berinteraksi dengan elemen-elemen yang lain
seperti hardware, database, dsb. Tahap ini sering disebut dengan Project Definitiona.
Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan difokuskan
pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para software
engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang
dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan
software) harus didokumentasikan dan ditunjukkan kepada pelanggan.
Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi
representasi ke dalam bentuk “blueprint” software sebelum coding dimulai. Desain harus
dapat mengimplementasikan kebutuhan yang telah disebutkan pada tahap sebelumnya.
Seperti 2 aktivitas sebelumnya, maka proses ini juga harus didokumentasikan sebagai
konfigurasi dari software.
Coding. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi
harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam
bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap
design yang secara teknis nantinya dikerjakan oleh programmer.
Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan
software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari error,
dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan
sebelumnya.
Maintenance. Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah
pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika
dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada
penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan diperlukan
ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem
operasi, atau perangkat lainnya.
Kekurangan yang utama dari model ini adalah kesulitan dalam mengakomodasi perubahan
setelah proses dijalani. Fase sebelumnya harus lengkap dan selesai sebelum mengerjakan
fase berikutnya.
Masalah dengan waterfall :
1. Perubahan sulit dilakukan karena sifatnya yang kaku.
2. Karena sifat kakunya, model ini cocok ketika kebutuhan dikumpulkan secara lengkap
sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada kenyataannya jarang sekali
konsumen/pengguna yang bisa memberikan kebutuhan secara lengkap, perubahan
kebutuhan adalah sesuatu yang wajar terjadi.
3. Waterfall pada umumnya digunakan untuk rekayasa sistem yang besar dimana proyek
dikerjakan di beberapa tempat berbeda, dan dibagi menjadi beberapa bagian sub-proyek
Kelebihan dan Kekurangan Waterfall Model
Kelebihan :
Merupakan model pengembangan paling handal dan paling lama digunakan.
Cocok untuk system software berskala besar.
Cocok untuk system software yang bersifat generic.
Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan :
Persyaratan system harus digambarkan dengan jelas.
Rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah.\Sulit untuk
mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan.
2. Iterative Model/Spiral Model
Proses digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process.
Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari
kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi
menjadi beberapa sektor :
1. Objective settings (menentukan tujuan) : menentukan tujuan dari fase yang ditentukan.
Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan
berdasarkan resiko-resiko yang diketahui, dan sudah direncanakan.
2. Risk assessment and reduction (Penanganan dan pengurangan resiko) : setiap resiko
dianalisis secara detil pada sektor ini. Langkahlangkah penanganan dilakukan, misalnya
membuat prototype untuk mengetahui ketidakcocokan kebutuhan.
3. Development and Validation (Pembangunan dan pengujian) : Setelah evaluasi resiko,
maka model pengembangan sistem dipilih. Misalnya jika resiko user interface dominan,
maka membuat prototype User Interface. Jika bagian keamanan yang bermasalah, maka
menggunakan model formal dengan perhitungan matematis, dan jika masalahnya adalah
integrasi sistem model waterfall lebih cocok.
4. Planning : Proyek dievaluasi atau ditinjau-ulang dan diputuskan untuk terus ke fase loop
selanjutnya atau tidak. Jika melanjutkan ke fase berikutnya rencana untuk loop
selanjutnya.
Pembagian sektor tidak bisa saja dikembangkan seperti pada pembagian sektor berikut
pada model variasi spiral di bawah ini:
3. Prototyping Model
Kadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detil input,
proses atau detil output. Di lain waktu mungkin dimana tim pembangun (developer) tidak yakin
terhadap efisiensi dari algoritma yang digunakan, tingkat adaptasi terhadap sistem operasi atau
rancangan form user interface. Ketika situasi seperti ini terjadi model prototyping sangat
membantu
proses
pembangunan
software.
Proses pada model prototyping yang digambarkan pada gambar 1, bisa 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. Detil kebutuhan mungkin tidak dibicarakan disini, pada awal pengumpulan
kebutuhan.
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, 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.
Agar model ini bisa berjalan dengan baik, perlu disepakati bersama oleh klien dan developer
bahwa prototype yang dibangun merupakan alat untuk mendefinisikan kebutuhan software.
Kelebihan dan Kekurangan Prototyping Model
Kelebihan :
Prototype melibatkan user dalam analisa dan desain.
Punya kemampuan menangkap requirement secara konkret daripada secara abstrak.
Untuk digunakan secara standalone.
Digunakan untuk memperluas SDLC.
Mempersingkat waktu pengembangan Sistem Informasi
Kekurangan :
Tidak ada cara untuk mengetahui banyaknya iterasi yang diperlakukan.
Proses analisis dan perancangan terlalu singkat.
Mengesampingkan alternatif pemecahan masalah.
Bisanya kurang fleksible dalam mengahdapi perubahan.
Protitype yang dihasilkan tidak selamanya mudah dirubah
Protype terlalu cepat selesai
1. Customer communication : membangun komunikasi yang baik dengan
pengguna/customer.
2. Planning : mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar
proyek
3. Risk analysis : identifikasi resiko managemen dan teknis
4. Engineering : pembangunan contoh-contoh aplikasi, misalnya prototype
5. Construction and release : pembangunan, test, install dan support.
6. Customer evaluation : mendapatkan feedback dari pengguna beradasarkan evaluasi PL
pada fase engineering dan fase instalasi. Pada model spiral, resiko sangat
dipertimbangkan. Resiko adalah sesuatu yang mungkin mengakibatkan kesalahan.
Model spiral merupakan pendekatan yang realistik untuk PL berskala besar. Pengguna dan
pembangun bisa memahami dengan baik software yang dibangun karena setiap kemajuan yang
dicapai selama proses dapat diamati dengan baik. Namun demikian, waktu yang cukup panjang
mungkin bukan pilihan bagi pengguna, karena waktu yang lama sama dengan biaya yang lebih
besar.
Kelebihan dan Kekurangan Iterative Model
Kelebihan :
Dapat mengakomodasi jika terjadi perubahan pada tahapan pengembangan yang telah
dilaksanakan.
Dapat disesuaikan agar system bisa dipakai selama hidup software computer.
Cocok untuk pengembangan sistem dan perangkat lunak skala besar.
Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko
setiap tahapan karena system terus bekerja selama proses.
Kekurangan :
Hanya berlaku untuk Short-Lifetime system.
Tahapan proses tidak terlihat sedang berada ditahapan mana suatu pekerjaan.
Memerlukan alat ukur kemajuan secara regular.
Perubahan yang sering terjadi dapat merubah struktur system.
Memerlukan tenaga ahli dengan kemampuan tinggi.
4.
Incremental
Mode
1. kombinasikan element-element dari waterfall dengan sifat iterasi/perulangan.
2. element-element dalam waterfall dikerjakan dengan hasil berupa produk dengan
spesifikasi tertentu, kemudian proses dimulai dari fase pertama hingga akhir dan
menghasilkan produk dengan spesifikasi yang lebih lengkap dari yang sebelumnya.
Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan
oleh pengguna.
3. produk hasil increment pertama biasanya produk inti (core product), yaitu produk yang
memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau menjalani
review/pengecekan detil. Hasil review tersebut menjadi bekal untuk pembangunan pada
increment berikutnya. Hal ini terus dikerjakan sampai produk yang komplit dihasilkan.
4. model ini cocok jika jumlah anggota tim pengembang/pembangun PL tidak cukup.
5. Mampu mengakomodasi perubahan secara fleksibel.
6. Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang
sudah bisa berfungsi dengan spesifikasi dasar.
Masalah dengan Incremental model :
1. cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding).
2. mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana
spesifikasi masing-masing hasil increment.
Kelebihan dan Kekurangan Incremental Model
Kelebihan Incremental Model
Personil bekerja optimal
Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan
Mengurangi trauma karena perubahan sistem.
Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian
Memaksimalkan pengembalian modal investasi konsumen
Kekurangan Incremental Model
kemungkinan tiap bagian tidak dapat diintegrasikan
Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat
perubahan selama proses rekayasa berlangsung
Harus Open Architecture
Process pengembangan perangkat lunak (Software development process) adalah
suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak
yang bertujuan untuk mengembangkan sistem dan memberikan panduan yang
bertujuan untuk menyukseskan proyek pengembangan sistem melalui tahap demi
tahap. Proses ini memiliki beberapa model yang masing-masing menjelaskan
pendekatan terhadap berbagai tugas atau aktivitas yang terjadi selama proses.
Contoh model proses pengembangan perangkat lunak antara lain adalah proses
iteratif, Extreme Programming, serta proses air terjun (waterfall)
SHARE THIS POST
Author: Mohammad
Mohammad is the founder of STC Network which offers Web Services and Online Business
Solutions to clients around the globe. Read More →
Related Posts:
0 komentar:
Posting Lebih BaruPosting LamaBeranda
Total Tayangan Halaman
988
Subscribe now!
1807+ People Following SS
Join
RSS
Facebook
Twitter
Stay Updated via Email Newsletter
Popular Posts
Analisis Perbandingan Generic Software Process Model
Generic View Of Software Engineering
RPL (Rekayasa Perangkat Lunak)
Software Process
Syarat Untuk Sukses
Archive
Su
Mo
Tu
We
◄ View Archive
Custom Text Widget
Th
Fr
Sa
Social Icons
Follow us on Facebook
Follow us on Twitter
Follow us on Google+
Follow us on Pinterest
Subscribe with RSS
Followers
About Me
Mahmud Yunus
Lihat profil lengkapku
Featured Posts
Latest Posts
Video
Recent Comments
Home
Typography
Sitemap
Services
Contact
Back to top
ABOUT
ShareThis Copy and Paste
© 2012 Designed by My Blogger Tricks
Local News Simsalabim Indonesia Clicking Here! Sahabat Sukses Salam sahabat News
Reviews Typography Blog Videos Page 0 0
0 Share Widgets Analisis Perbandingan Generic
Software Process Model Diposting oleh Mahmud Yunus , 23.47 Be the first to comment! Pada
kesempatan kali ini kelompok kami akan menganalisis perbandingan Generic Software Process
Model, sedikit singkat dan hampir mendekati. Ada 4 Software Process Model : Waterfall Model,
Spiral Model, Prototyping Model, Incremental Model. Waterfaal Model Pada gambar disamping
adalah tahapan umum dari model proses ini. Akan tetapi Roger S. Pressman memecah model ini
menjadi 6 tahapan meskipun secara garis besar sama dengan tahapan-tahapan model waterfall
pada umumnya. Berikut adalah penjelasan dari tahap-tahap yang dilakukan di dalam model ini
menurut Pressman System / Information Engineering and Modeling. Permodelan ini diawali
dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk
software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan elemenelemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut dengan Project
Definitiona. Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan
difokuskan pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para
software engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang
dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan
software) harus didokumentasikan dan ditunjukkan kepada pelanggan. Design. Proses ini
digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk
“blueprint” software sebelum coding dimulai. Desain harus dapat mengimplementasikan
kebutuhan yang telah disebutkan pada tahap sebelumnya. Seperti 2 aktivitas sebelumnya, maka
proses ini juga harus didokumentasikan sebagai konfigurasi dari software. Coding. Untuk dapat
dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya
menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui
proses coding. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya
dikerjakan oleh programmer. Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan.
Demikian juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar software
bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah
didefinisikan sebelumnya. Maintenance. Pemeliharaan suatu software diperlukan, termasuk di
dalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti
itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya,
atau ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan
diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian
sistem operasi, atau perangkat lainnya. Kekurangan yang utama dari model ini adalah kesulitan
dalam mengakomodasi perubahan setelah proses dijalani. Fase sebelumnya harus lengkap dan
selesai sebelum mengerjakan fase berikutnya. Masalah dengan waterfall : Perubahan sulit
dilakukan karena sifatnya yang kaku. Karena sifat kakunya, model ini cocok ketika kebutuhan
dikumpulkan secara lengkap sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada
kenyataannya jarang sekali konsumen/pengguna yang bisa memberikan kebutuhan secara
lengkap, perubahan kebutuhan adalah sesuatu yang wajar terjadi. Waterfall pada umumnya
digunakan untuk rekayasa sistem yang besar dimana proyek dikerjakan di beberapa tempat
berbeda, dan dibagi menjadi beberapa bagian sub-proyek Kelebihan dan Kekurangan Waterfall
Model Kelebihan : Merupakan model pengembangan paling handal dan paling lama digunakan.
Cocok untuk system software berskala besar. Cocok untuk system software yang bersifat
generic. Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan : Persyaratan system harus digambarkan dengan jelas. Rincian proses harus benarbenar jelas dan tidak boleh berubah-ubah.\Sulit untuk mengadaptasi jika terjadi perubahan
spesifikasi pada suatu tahapan pengembangan. 2. Iterative Model/Spiral Model Proses
digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process. Loop paling
dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan,
loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi menjadi
beberapa sektor : Objective settings (menentukan tujuan) : menentukan tujuan dari fase yang
ditentukan. Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan berdasarkan
resiko-resiko yang diketahui, dan sudah direncanakan. Risk assessment and reduction
(Penanganan dan pengurangan resiko) : setiap resiko dianalisis secara detil pada sektor ini.
Langkahlangkah penanganan dilakukan, misalnya membuat prototype untuk mengetahui
ketidakcocokan kebutuhan. Development and Validation (Pembangunan dan pengujian) :
Setelah evaluasi resiko, maka model pengembangan sistem dipilih. Misalnya jika resiko user
interface dominan, maka membuat prototype User Interface. Jika bagian keamanan yang
bermasalah, maka menggunakan model formal dengan perhitungan matematis, dan jika
masalahnya adalah integrasi sistem model waterfall lebih cocok. Planning : Proyek dievaluasi
atau ditinjau-ulang dan diputuskan untuk terus ke fase loop selanjutnya atau tidak. Jika
melanjutkan ke fase berikutnya rencana untuk loop selanjutnya. Pembagian sektor tidak bisa
saja dikembangkan seperti pada pembagian sektor berikut pada model variasi spiral di bawah
ini: 3. Prototyping Model Kadang-kadang klien hanya memberikan beberapa kebutuhan umum
software tanpa detil input, proses atau detil output. Di lain waktu mungkin dimana tim
pembangun (developer) tidak yakin terhadap efisiensi dari algoritma yang digunakan, tingkat
adaptasi terhadap sistem operasi atau rancangan form user interface. Ketika situasi seperti ini
terjadi model prototyping sangat membantu proses pembangunan software. Proses pada model
prototyping yang digambarkan pada gambar 1, bisa dijelaskan sebagai berikut: pengumpulan
kebutuhan : developer dan klien bertemu dan menentukan tujuan umum, kebutuhan yang
diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya. Detil kebutuhan
mungkin tidak dibicarakan disini, pada awal pengumpulan kebutuhan. perancangan :
perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang diketahui,
dan rancangan ini menjadi dasar pembuatan prototype. 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, membantu
mendapatkan kebutuhan detil lebih baik namun demikian prototype juga menimbulkan masalah:
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. 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. Agar model ini bisa
berjalan dengan baik, perlu disepakati bersama oleh klien dan developer bahwa prototype yang
dibangun merupakan alat untuk mendefinisikan kebutuhan software. Kelebihan dan Kekurangan
Prototyping Model Kelebihan : Prototype melibatkan user dalam analisa dan desain. Punya
kemampuan menangkap requirement secara konkret daripada secara abstrak. Untuk digunakan
secara standalone. Digunakan untuk memperluas SDLC. Mempersingkat waktu pengembangan
Sistem Informasi Kekurangan : Tidak ada cara untuk mengetahui banyaknya iterasi yang
diperlakukan. Proses analisis dan perancangan terlalu singkat. Mengesampingkan alternatif
pemecahan masalah. Bisanya kurang fleksible dalam mengahdapi perubahan. Protitype yang
dihasilkan tidak selamanya mudah dirubah Protype terlalu cepat selesai Customer
communication : membangun komunikasi yang baik dengan pengguna/customer. Planning :
mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar proyek Risk analysis :
identifikasi resiko managemen dan teknis Engineering : pembangunan contoh-contoh aplikasi,
misalnya prototype Construction and release : pembangunan, test, install dan support. Customer
evaluation : mendapatkan feedback dari pengguna beradasarkan evaluasi PL pada fase
engineering dan fase instalasi. Pada model spiral, resiko sangat dipertimbangkan. Resiko adalah
sesuatu yang mungkin mengakibatkan kesalahan. Model spiral merupakan pendekatan yang
realistik untuk PL berskala besar. Pengguna dan pembangun bisa memahami dengan baik
software yang dibangun karena setiap kemajuan yang dicapai selama proses dapat diamati
dengan baik. Namun demikian, waktu yang cukup panjang mungkin bukan pilihan bagi
pengguna, karena waktu yang lama sama dengan biaya yang lebih besar. Kelebihan dan
Kekurangan Iterative Model Kelebihan : Dapat mengakomodasi jika terjadi perubahan pada
tahapan pengembangan yang telah dilaksanakan. Dapat disesuaikan agar system bisa dipakai
selama hidup software computer. Cocok untuk pengembangan sistem dan perangkat lunak skala
besar. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko
setiap tahapan karena system terus bekerja selama proses. Kekurangan : Hanya berlaku untuk
Short-Lifetime system. Tahapan proses tidak terlihat sedang berada ditahapan mana suatu
pekerjaan. Memerlukan alat ukur kemajuan secara regular. Perubahan yang sering terjadi dapat
merubah struktur system. Memerlukan tenaga ahli dengan kemampuan tinggi. 4. Incremental
Mode kombinasikan element-element dari waterfall dengan sifat iterasi/perulangan. elementelement dalam waterfall dikerjakan dengan hasil berupa produk dengan spesifikasi tertentu,
kemudian proses dimulai dari fase pertama hingga akhir dan menghasilkan produk dengan
spesifikasi yang lebih lengkap dari yang sebelumnya. Demikian seterusnya hingga semua
spesifikasi memenuhi kebutuhan yang ditetapkan oleh pengguna. produk hasil increment
pertama biasanya produk inti (core product), yaitu produk yang memenuhi kebutuhan dasar.
Produk tersebut digunakan oleh pengguna atau menjalani review/pengecekan detil. Hasil review
tersebut menjadi bekal untuk pembangunan pada increment berikutnya. Hal ini terus dikerjakan
sampai produk yang komplit dihasilkan. model ini cocok jika jumlah anggota tim
pengembang/pembangun PL tidak cukup. Mampu mengakomodasi perubahan secara fleksibel.
Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang sudah
bisa berfungsi dengan spesifikasi dasar. Masalah dengan Incremental model : cocok untuk
proyek berukuran kecil (tidak lebih dari 200.000 baris coding). mungkin terjadi kesulitan untuk
memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment.
Kelebihan dan Kekurangan Incremental Model Kelebihan Incremental Model Personil bekerja
optimal Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan Mengurangi trauma karena perubahan sistem.
Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian Memaksimalkan
pengembalian modal investasi konsumen Kekurangan Incremental Model kemungkinan tiap
bagian tidak dapat diintegrasikan Dapat menjadi build and Fix Model, karena kemampuannya
untuk selalu mendapat perubahan selama proses rekayasa berlangsung Harus Open
Architecture Process pengembangan perangkat lunak (Software development process) adalah
suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak yang
bertujuan untuk mengembangkan sistem dan memberikan panduan yang bertujuan untuk
menyukseskan proyek pengembangan sistem melalui tahap demi tahap. Proses ini memiliki
beberapa model yang masing-masing menjelaskan pendekatan terhadap berbagai tugas atau
aktivitas yang terjadi selama proses. Contoh model proses pengembangan perangkat lunak
antara lain adalah proses iteratif, Extreme Programming, serta proses air terjun (waterfall)
SHARE THIS POST
Author: Mohammad Mohammad is the founder of STC Network which
offers Web Services and Online Business Solutions to clients around the globe. Read More →
Related Posts: 0 komentar: Posting Lebih Baru Posting Lama Beranda Total Tayangan Halaman
988 Subscribe now! Join 1807+ People Following SS RSSFacebookTwitterStay Updated via
Email Newsletter Popular Posts Analisis Perbandingan Generic Software Process Model Generic
View Of Software Engineering RPL (Rekayasa Perangkat Lunak) Software Process Syarat Untuk
Sukses Archive Su Mo Tu We Th Fr Sa ◄ View Archive Custom Text Widget Social Icons Follow
us on Facebook Follow us on Twitter Follow us on Google+ Follow us on Pinterest Subscribe
with RSS Followers About Me Mahmud Yunus Lihat profil lengkapku Featured Posts Latest Posts
Video Recent Comments HomeTypographySitemapServicesContact Back to top ABOUT online
casino Local News Simsalabim Indonesia Clicking Here! Sahabat Sukses Salam sahabat News
Reviews Typography Blog Videos Page 0 0
0 Share Widgets Analisis Perbandingan Generic
Software Process Model Diposting oleh Mahmud Yunus , 23.47 Be the first to comment! Pada
kesempatan kali ini kelompok kami akan menganalisis perbandingan Generic Software Process
Model, sedikit singkat dan hampir mendekati. Ada 4 Software Process Model : Waterfall Model,
Spiral Model, Prototyping Model, Incremental Model. Waterfaal Model Pada gambar disamping
adalah tahapan umum dari model proses ini. Akan tetapi Roger S. Pressman memecah model ini
menjadi 6 tahapan meskipun secara garis besar sama dengan tahapan-tahapan model waterfall
pada umumnya. Berikut adalah penjelasan dari tahap-tahap yang dilakukan di dalam model ini
menurut Pressman System / Information Engineering and Modeling. Permodelan ini diawali
dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk
software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan elemenelemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut dengan Project
Definitiona. Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan
difokuskan pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para
software engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang
dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan
software) harus didokumentasikan dan ditunjukkan kepada pelanggan. Design. Proses ini
digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk
“blueprint” software sebelum coding dimulai. Desain harus dapat mengimplementasikan
kebutuhan yang telah disebutkan pada tahap sebelumnya. Seperti 2 aktivitas sebelumnya, maka
proses ini juga harus didokumentasikan sebagai konfigurasi dari software. Coding. Untuk dapat
dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya
menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui
proses coding. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya
dikerjakan oleh programmer. Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan.
Demikian juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar software
bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah
didefinisikan sebelumnya. Maintenance. Pemeliharaan suatu software diperlukan, termasuk di
dalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti
itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya,
atau ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan
diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian
sistem operasi, atau perangkat lainnya. Kekurangan yang utama dari model ini adalah kesulitan
dalam mengakomodasi perubahan setelah proses dijalani. Fase sebelumnya harus lengkap dan
selesai sebelum mengerjakan fase berikutnya. Masalah dengan waterfall : Perubahan sulit
dilakukan karena sifatnya yang kaku. Karena sifat kakunya, model ini cocok ketika kebutuhan
dikumpulkan secara lengkap sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada
kenyataannya jarang sekali konsumen/pengguna yang bisa memberikan kebutuhan secara
lengkap, perubahan kebutuhan adalah sesuatu yang wajar terjadi. Waterfall pada umumnya
digunakan untuk rekayasa sistem yang besar dimana proyek dikerjakan di beberapa tempat
berbeda, dan dibagi menjadi beberapa bagian sub-proyek Kelebihan dan Kekurangan Waterfall
Model Kelebihan : Merupakan model pengembangan paling handal dan paling lama digunakan.
Cocok untuk system software berskala besar. Cocok untuk system software yang bersifat
generic. Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan : Persyaratan system harus digambarkan dengan jelas. Rincian proses harus benarbenar jelas dan tidak boleh berubah-ubah.\Sulit untuk mengadaptasi jika terjadi perubahan
spesifikasi pada suatu tahapan pengembangan. 2. Iterative Model/Spiral Model Proses
digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process. Loop paling
dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan,
loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi menjadi
beberapa sektor : Objective settings (menentukan tujuan) : menentukan tujuan dari fase yang
ditentukan. Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan berdasarkan
resiko-resiko yang diketahui, dan sudah direncanakan. Risk assessment and reduction
(Penanganan dan pengurangan resiko) : setiap resiko dianalisis secara detil pada sektor ini.
Langkahlangkah penanganan dilakukan, misalnya membuat prototype untuk mengetahui
ketidakcocokan kebutuhan. Development and Validation (Pembangunan dan pengujian) :
Setelah evaluasi resiko, maka model pengembangan sistem dipilih. Misalnya jika resiko user
interface dominan, maka membuat prototype User Interface. Jika bagian keamanan yang
bermasalah, maka menggunakan model formal dengan perhitungan matematis, dan jika
masalahnya adalah integrasi sistem model waterfall lebih cocok. Planning : Proyek dievaluasi
atau ditinjau-ulang dan diputuskan untuk terus ke fase loop selanjutnya atau tidak. Jika
melanjutkan ke fase berikutnya rencana untuk loop selanjutnya. Pembagian sektor tidak bisa
saja dikembangkan seperti pada pembagian sektor berikut pada model variasi spiral di bawah
ini: 3. Prototyping Model Kadang-kadang klien hanya memberikan beberapa kebutuhan umum
software tanpa detil input, proses atau detil output. Di lain waktu mungkin dimana tim
pembangun (developer) tidak yakin terhadap efisiensi dari algoritma yang digunakan, tingkat
adaptasi terhadap sistem operasi atau rancangan form user interface. Ketika situasi seperti ini
terjadi model prototyping sangat membantu proses pembangunan software. Proses pada model
prototyping yang digambarkan pada gambar 1, bisa dijelaskan sebagai berikut: pengumpulan
kebutuhan : developer dan klien bertemu dan menentukan tujuan umum, kebutuhan yang
diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya. Detil kebutuhan
mungkin tidak dibicarakan disini, pada awal pengumpulan kebutuhan. perancangan :
perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang diketahui,
dan rancangan ini menjadi dasar pembuatan prototype. 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, membantu
mendapatkan kebutuhan detil lebih baik namun demikian prototype juga menimbulkan masalah:
dalam membuat prototype banyak hal yang diabaikan seperti efisien
Sahabat Sukses
Salam sahabat
News
Reviews
Typography
Blog
Videos
Page
0
0
0Share
Widgets
Analisis Perbandingan Generic Software Process Model
Diposting oleh Mahmud Yunus , 23.47 Be the first to comment!
Pada kesempatan kali ini kelompok kami akan menganalisis perbandingan Generic Software
Process Model, sedikit singkat dan hampir mendekati. Ada 4 Software Process Model : Waterfall
Model, Spiral Model, Prototyping Model, Incremental Model.
1.
Waterfaal Model
Pada gambar disamping adalah tahapan umum dari model proses ini. Akan tetapi Roger S.
Pressman memecah model ini menjadi 6 tahapan meskipun secara garis besar sama
dengan tahapan-tahapan model waterfall pada umumnya. Berikut adalah penjelasan dari
tahap-tahap yang dilakukan di dalam model ini menurut Pressman System / Information
Engineering and Modeling. Permodelan ini diawali dengan mencari kebutuhan dari
keseluruhan sistem yang akan diaplikasikan ke dalam bentuk software. Hal ini sangat
penting, mengingat software harus dapat berinteraksi dengan elemen-elemen yang lain
seperti hardware, database, dsb. Tahap ini sering disebut dengan Project Definitiona.
Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan difokuskan
pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para software
engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang
dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan
software) harus didokumentasikan dan ditunjukkan kepada pelanggan.
Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi
representasi ke dalam bentuk “blueprint” software sebelum coding dimulai. Desain harus
dapat mengimplementasikan kebutuhan yang telah disebutkan pada tahap sebelumnya.
Seperti 2 aktivitas sebelumnya, maka proses ini juga harus didokumentasikan sebagai
konfigurasi dari software.
Coding. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi
harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam
bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap
design yang secara teknis nantinya dikerjakan oleh programmer.
Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan
software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari error,
dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan
sebelumnya.
Maintenance. Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah
pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika
dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada
penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan diperlukan
ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem
operasi, atau perangkat lainnya.
Kekurangan yang utama dari model ini adalah kesulitan dalam mengakomodasi perubahan
setelah proses dijalani. Fase sebelumnya harus lengkap dan selesai sebelum mengerjakan
fase berikutnya.
Masalah dengan waterfall :
1. Perubahan sulit dilakukan karena sifatnya yang kaku.
2. Karena sifat kakunya, model ini cocok ketika kebutuhan dikumpulkan secara lengkap
sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada kenyataannya jarang sekali
konsumen/pengguna yang bisa memberikan kebutuhan secara lengkap, perubahan
kebutuhan adalah sesuatu yang wajar terjadi.
3. Waterfall pada umumnya digunakan untuk rekayasa sistem yang besar dimana proyek
dikerjakan di beberapa tempat berbeda, dan dibagi menjadi beberapa bagian sub-proyek
Kelebihan dan Kekurangan Waterfall Model
Kelebihan :
Merupakan model pengembangan paling handal dan paling lama digunakan.
Cocok untuk system software berskala besar.
Cocok untuk system software yang bersifat generic.
Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan :
Persyaratan system harus digambarkan dengan jelas.
Rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah.\Sulit untuk
mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan.
2. Iterative Model/Spiral Model
Proses digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process.
Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari
kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi
menjadi beberapa sektor :
1. Objective settings (menentukan tujuan) : menentukan tujuan dari fase yang ditentukan.
Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan
berdasarkan resiko-resiko yang diketahui, dan sudah direncanakan.
2. Risk assessment and reduction (Penanganan dan pengurangan resiko) : setiap resiko
dianalisis secara detil pada sektor ini. Langkahlangkah penanganan dilakukan, misalnya
membuat prototype untuk mengetahui ketidakcocokan kebutuhan.
3. Development and Validation (Pembangunan dan pengujian) : Setelah evaluasi resiko,
maka model pengembangan sistem dipilih. Misalnya jika resiko user interface dominan,
maka membuat prototype User Interface. Jika bagian keamanan yang bermasalah, maka
menggunakan model formal dengan perhitungan matematis, dan jika masalahnya adalah
integrasi sistem model waterfall lebih cocok.
4. Planning : Proyek dievaluasi atau ditinjau-ulang dan diputuskan untuk terus ke fase loop
selanjutnya atau tidak. Jika melanjutkan ke fase berikutnya rencana untuk loop
selanjutnya.
Pembagian sektor tidak bisa saja dikembangkan seperti pada pembagian sektor berikut
pada model variasi spiral di bawah ini:
3. Prototyping Model
Kadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detil input,
proses atau detil output. Di lain waktu mungkin dimana tim pembangun (developer) tidak yakin
terhadap efisiensi dari algoritma yang digunakan, tingkat adaptasi terhadap sistem operasi atau
rancangan form user interface. Ketika situasi seperti ini terjadi model prototyping sangat
membantu
proses
pembangunan
software.
Proses pada model prototyping yang digambarkan pada gambar 1, bisa 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. Detil kebutuhan mungkin tidak dibicarakan disini, pada awal pengumpulan
kebutuhan.
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, 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.
Agar model ini bisa berjalan dengan baik, perlu disepakati bersama oleh klien dan developer
bahwa prototype yang dibangun merupakan alat untuk mendefinisikan kebutuhan software.
Kelebihan dan Kekurangan Prototyping Model
Kelebihan :
Prototype melibatkan user dalam analisa dan desain.
Punya kemampuan menangkap requirement secara konkret daripada secara abstrak.
Untuk digunakan secara standalone.
Digunakan untuk memperluas SDLC.
Mempersingkat waktu pengembangan Sistem Informasi
Kekurangan :
Tidak ada cara untuk mengetahui banyaknya iterasi yang diperlakukan.
Proses analisis dan perancangan terlalu singkat.
Mengesampingkan alternatif pemecahan masalah.
Bisanya kurang fleksible dalam mengahdapi perubahan.
Protitype yang dihasilkan tidak selamanya mudah dirubah
Protype terlalu cepat selesai
1. Customer communication : membangun komunikasi yang baik dengan
pengguna/customer.
2. Planning : mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar
proyek
3. Risk analysis : identifikasi resiko managemen dan teknis
4. Engineering : pembangunan contoh-contoh aplikasi, misalnya prototype
5. Construction and release : pembangunan, test, install dan support.
6. Customer evaluation : mendapatkan feedback dari pengguna beradasarkan evaluasi PL
pada fase engineering dan fase instalasi. Pada model spiral, resiko sangat
dipertimbangkan. Resiko adalah sesuatu yang mungkin mengakibatkan kesalahan.
Model spiral merupakan pendekatan yang realistik untuk PL berskala besar. Pengguna dan
pembangun bisa memahami dengan baik software yang dibangun karena setiap kemajuan yang
dicapai selama proses dapat diamati dengan baik. Namun demikian, waktu yang cukup panjang
mungkin bukan pilihan bagi pengguna, karena waktu yang lama sama dengan biaya yang lebih
besar.
Kelebihan dan Kekurangan Iterative Model
Kelebihan :
Dapat mengakomodasi jika terjadi perubahan pada tahapan pengembangan yang telah
dilaksanakan.
Dapat disesuaikan agar system bisa dipakai selama hidup software computer.
Cocok untuk pengembangan sistem dan perangkat lunak skala besar.
Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko
setiap tahapan karena system terus bekerja selama proses.
Kekurangan :
Hanya berlaku untuk Short-Lifetime system.
Tahapan proses tidak terlihat sedang berada ditahapan mana suatu pekerjaan.
Memerlukan alat ukur kemajuan secara regular.
Perubahan yang sering terjadi dapat merubah struktur system.
Memerlukan tenaga ahli dengan kemampuan tinggi.
4.
Incremental
Mode
1. kombinasikan element-element dari waterfall dengan sifat iterasi/perulangan.
2. element-element dalam waterfall dikerjakan dengan hasil berupa produk dengan
spesifikasi tertentu, kemudian proses dimulai dari fase pertama hingga akhir dan
menghasilkan produk dengan spesifikasi yang lebih lengkap dari yang sebelumnya.
Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan
oleh pengguna.
3. produk hasil increment pertama biasanya produk inti (core product), yaitu produk yang
memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau menjalani
review/pengecekan detil. Hasil review tersebut menjadi bekal untuk pembangunan pada
increment berikutnya. Hal ini terus dikerjakan sampai produk yang komplit dihasilkan.
4. model ini cocok jika jumlah anggota tim pengembang/pembangun PL tidak cukup.
5. Mampu mengakomodasi perubahan secara fleksibel.
6. Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang
sudah bisa berfungsi dengan spesifikasi dasar.
Masalah dengan Incremental model :
1. cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding).
2. mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana
spesifikasi masing-masing hasil increment.
Kelebihan dan Kekurangan Incremental Model
Kelebihan Incremental Model
Personil bekerja optimal
Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan
Mengurangi trauma karena perubahan sistem.
Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian
Memaksimalkan pengembalian modal investasi konsumen
Kekurangan Incremental Model
kemungkinan tiap bagian tidak dapat diintegrasikan
Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat
perubahan selama proses rekayasa berlangsung
Harus Open Architecture
Process pengembangan perangkat lunak (Software development process) adalah
suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak
yang bertujuan untuk mengembangkan sistem dan memberikan panduan yang
bertujuan untuk menyukseskan proyek pengembangan sistem melalui tahap demi
tahap. Proses ini memiliki beberapa model yang masing-masing menjelaskan
pendekatan terhadap berbagai tugas atau aktivitas yang terjadi selama proses.
Contoh model proses pengembangan perangkat lunak antara lain adalah proses
iteratif, Extreme Programming, serta proses air terjun (waterfall)
SHARE THIS POST
Author: Mohammad
Mohammad is the founder of STC Network which offers Web Services and Online Business
Solutions to clients around the globe. Read More →
Related Posts:
0 komentar:
Posting Lebih BaruPosting LamaBeranda
Total Tayangan Halaman
988
Subscribe now!
1807+ People Following SS
Join
RSS
Stay Updated via Email Newsletter
Popular Posts
Analisis Perbandingan Generic Software Process Model
Generic View Of Software Engineering
RPL (Rekayasa Perangkat Lunak)
Software Process
Syarat Untuk Sukses
Archive
Su
Mo
Tu
We
◄ View Archive
Custom Text Widget
Th
Fr
Sa
Social Icons
Follow us on Facebook
Follow us on Twitter
Follow us on Google+
Follow us on Pinterest
Subscribe with RSS
Followers
About Me
Mahmud Yunus
Lihat profil lengkapku
Featured Posts
Latest Posts
Video
Recent Comments
Home
Typography
Sitemap
Services
Contact
Back to top
ABOUT
Local News Simsalabim Indonesia Clicking Here!
Sahabat Sukses
Salam sahabat
News
Reviews
Typography
Blog
Videos
Page
0
0
0Share
Widgets
Analisis Perbandingan Generic Software Process Model
Diposting oleh Mahmud Yunus , 23.47 Be the first to comment!
Pada kesempatan kali ini kelompok kami akan menganalisis perbandingan
Software Process Model, sedikit singkat dan hampir mendekati. Ada 4 Software Process Model :
Waterfall Model, Spiral Model, Prototyping Model, Incremental Model.
1.
Waterfaal Model
Pada gambar disamping adalah tahapan umum dari model proses ini. Akan tetapi Roger S.
Pressman memecah model ini menjadi 6 tahapan meskipun secara garis besar sama
dengan tahapan-tahapan model waterfall pada umumnya. Berikut adalah penjelasan dari
tahap-tahap yang dilakukan di dalam model ini menurut Pressman System / Information
Engineering and Modeling. Permodelan ini diawali dengan mencari kebutuhan dari
keseluruhan sistem yang akan diaplikasikan ke dalam bentuk software. Hal ini sangat
penting, mengingat software harus dapat berinteraksi dengan elemen-elemen yang lain
seperti hardware, database, dsb. Tahap ini sering disebut dengan Project Definitiona.
Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan difokuskan
pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para software
engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang
dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan
software) harus didokumentasikan dan ditunjukkan kepada pelanggan.
Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi
representasi ke dalam bentuk “blueprint” software sebelum coding dimulai. Desain harus
dapat mengimplementasikan kebutuhan yang telah disebutkan pada tahap sebelumnya.
Seperti 2 aktivitas sebelumnya, maka proses ini juga harus didokumentasikan sebagai
konfigurasi dari software.
Coding. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi
harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam
bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap
design yang secara teknis nantinya dikerjakan oleh programmer.
Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan
software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari error,
dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan
sebelumnya.
Maintenance. Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah
pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika
dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada
penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan diperlukan
ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem
operasi, atau perangkat lainnya.
Kekurangan yang utama dari model ini adalah kesulitan dalam mengakomodasi perubahan
setelah proses dijalani. Fase sebelumnya harus lengkap dan selesai sebelum mengerjakan
fase berikutnya.
Masalah dengan waterfall :
1. Perubahan sulit dilakukan karena sifatnya yang kaku.
2. Karena sifat kakunya, model ini cocok ketika kebutuhan dikumpulkan secara lengkap
sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada kenyataannya jarang sekali
konsumen/pengguna yang bisa memberikan kebutuhan secara lengkap, perubahan
kebutuhan adalah sesuatu yang wajar terjadi.
3. Waterfall pada umumnya digunakan untuk rekayasa sistem yang besar dimana proyek
dikerjakan di beberapa tempat berbeda, dan dibagi menjadi beberapa bagian sub-proyek
Kelebihan dan Kekurangan Waterfall Model
Kelebihan :
Merupakan model pengembangan paling handal dan paling lama digunakan.
Cocok untuk system software berskala besar.
Cocok untuk system software yang bersifat generic.
Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan :
Persyaratan system harus digambarkan dengan jelas.
Rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah.\Sulit untuk
mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan.
2. Iterative Model/Spiral Model
Proses digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process.
Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari
kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi
menjadi beberapa sektor :
1. Objective settings (menentukan tujuan) : menentukan tujuan dari fase yang ditentukan.
Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan
berdasarkan resiko-resiko yang diketahui, dan sudah direncanakan.
2. Risk assessment and reduction (Penanganan dan pengurangan resiko) : setiap resiko
dianalisis secara detil pada sektor ini. Langkahlangkah penanganan dilakukan, misalnya
membuat prototype untuk mengetahui ketidakcocokan kebutuhan.
3. Development and Validation (Pembangunan dan pengujian) : Setelah evaluasi resiko,
maka model pengembangan sistem dipilih. Misalnya jika resiko user interface dominan,
maka membuat prototype User Interface. Jika bagian keamanan yang bermasalah, maka
menggunakan model formal dengan perhitungan matematis, dan jika masalahnya adalah
integrasi sistem model waterfall lebih cocok.
4. Planning : Proyek dievaluasi atau ditinjau-ulang dan diputuskan untuk terus ke fase loop
selanjutnya atau tidak. Jika melanjutkan ke fase berikutnya rencana untuk loop
selanjutnya.
Pembagian sektor tidak bisa saja dikembangkan seperti pada pembagian sektor berikut
pada model variasi spiral di bawah ini:
3. Prototyping Model
Kadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detil input,
proses atau detil output. Di lain waktu mungkin dimana tim pembangun (developer) tidak yakin
terhadap efisiensi dari algoritma yang digunakan, tingkat adaptasi terhadap sistem operasi atau
rancangan form user interface. Ketika situasi seperti ini terjadi model prototyping sangat
membantu
proses
pembangunan
software.
Proses pada model prototyping yang digambarkan pada gambar 1, bisa 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. Detil kebutuhan mungkin tidak dibicarakan disini, pada awal pengumpulan
kebutuhan.
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, 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.
Agar model ini bisa berjalan dengan baik, perlu disepakati bersama oleh klien dan developer
bahwa prototype yang dibangun merupakan alat untuk mendefinisikan kebutuhan software.
Kelebihan dan Kekurangan Prototyping Model
Kelebihan :
Prototype melibatkan user dalam analisa dan desain.
Punya kemampuan menangkap requirement secara konkret daripada secara abstrak.
Untuk digunakan secara standalone.
Digunakan untuk memperluas SDLC.
Mempersingkat waktu pengembangan Sistem Informasi
Kekurangan :
Tidak ada cara untuk mengetahui banyaknya iterasi yang diperlakukan.
Proses analisis dan perancangan terlalu singkat.
Mengesampingkan alternatif pemecahan masalah.
Bisanya kurang fleksible dalam mengahdapi perubahan.
Protitype yang dihasilkan tidak selamanya mudah dirubah
Protype terlalu cepat selesai
1. Customer communication : membangun komunikasi yang baik dengan
pengguna/customer.
2. Planning : mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar
proyek
3. Risk analysis : identifikasi resiko managemen dan teknis
4. Engineering : pembangunan contoh-contoh aplikasi, misalnya prototype
5. Construction and release : pembangunan, test, install dan support.
6. Customer evaluation : mendapatkan feedback dari pengguna beradasarkan evaluasi PL
pada fase engineering dan fase instalasi. Pada model spiral, resiko sangat
dipertimbangkan. Resiko adalah sesuatu yang mungkin mengakibatkan kesalahan.
Model spiral merupakan pendekatan yang realistik untuk PL berskala besar. Pengguna dan
pembangun bisa memahami dengan baik software yang dibangun karena setiap kemajuan yang
dicapai selama proses dapat diamati dengan baik. Namun demikian, waktu yang cukup panjang
mungkin bukan pilihan bagi pengguna, karena waktu yang lama sama dengan biaya yang lebih
besar.
Kelebihan dan Kekurangan Iterative Model
Kelebihan :
Dapat mengakomodasi jika terjadi perubahan pada tahapan pengembangan yang telah
dilaksanakan.
Dapat disesuaikan agar system bisa dipakai selama hidup software computer.
Cocok untuk pengembangan sistem dan perangkat lunak skala besar.
Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko
setiap tahapan karena system terus bekerja selama proses.
Kekurangan :
Hanya berlaku untuk Short-Lifetime system.
Tahapan proses tidak terlihat sedang berada ditahapan mana suatu pekerjaan.
Memerlukan alat ukur kemajuan secara regular.
Perubahan yang sering terjadi dapat merubah struktur system.
Memerlukan tenaga ahli dengan kemampuan tinggi.
4.
Incremental
Mode
1. kombinasikan element-element dari waterfall dengan sifat iterasi/perulangan.
2. element-element dalam waterfall dikerjakan dengan hasil berupa produk dengan
spesifikasi tertentu, kemudian proses dimulai dari fase pertama hingga akhir dan
menghasilkan produk dengan spesifikasi yang lebih lengkap dari yang sebelumnya.
Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan
oleh pengguna.
3. produk hasil increment pertama biasanya produk inti (core product), yaitu produk yang
memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau menjalani
review/pengecekan detil. Hasil review tersebut menjadi bekal untuk pembangunan pada
increment berikutnya. Hal ini terus dikerjakan sampai produk yang komplit dihasilkan.
4. model ini cocok jika jumlah anggota tim pengembang/pembangun PL tidak cukup.
5. Mampu mengakomodasi perubahan secara fleksibel.
6. Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang
sudah bisa berfungsi dengan spesifikasi dasar.
Masalah dengan Incremental model :
1. cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding).
2. mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana
spesifikasi masing-masing hasil increment.
Kelebihan dan Kekurangan Incremental Model
Kelebihan Incremental Model
Personil bekerja optimal
Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan
Mengurangi trauma karena perubahan sistem.
Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian
Memaksimalkan pengembalian modal investasi konsumen
Kekurangan Incremental Model
kemungkinan tiap bagian tidak dapat diintegrasikan
Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat
perubahan selama proses rekayasa berlangsung
Harus Open Architecture
Process pengembangan perangkat lunak (Software development process) adalah
suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak
yang bertujuan untuk mengembangkan sistem dan memberikan panduan yang
bertujuan untuk menyukseskan proyek pengembangan sistem melalui tahap demi
tahap. Proses ini memiliki beberapa model yang masing-masing menjelaskan
pendekatan terhadap berbagai tugas atau aktivitas yang terjadi selama proses.
Contoh model proses pengembangan perangkat lunak antara lain adalah proses
iteratif, Extreme Programming, serta proses air terjun (waterfall)
SHARE THIS POST
Author: Mohammad
Mohammad is the founder of STC Network which offers Web Services and Online Business
Solutions to clients around the globe. Read More →
Related Posts:
0 komentar:
Posting Lebih BaruPosting LamaBeranda
Total Tayangan Halaman
988
Subscribe now!
1807+ People Following SS
Join
RSS
Stay Updated via Email Newsletter
Popular Posts
Analisis Perbandingan Generic Software Process Model
Generic View Of Software Engineering
RPL (Rekayasa Perangkat Lunak)
Software Process
Syarat Untuk Sukses
Archive
Su
Mo
Tu
We
◄ View Archive
Custom Text Widget
Th
Fr
Sa
Social Icons
Follow us on Facebook
Follow us on Twitter
Follow us on Google+
Follow us on Pinterest
Subscribe with RSS
Followers
About Me
Mahmud Yunus
Lihat profil lengkapku
Featured Posts
Latest Posts
Video
Recent Comments
Home
Typography
Sitemap
Services
Contact
Back to top
ABOUT
ShareThis Copy and Paste
© 2012 Designed by My Blogger Tricks
Local News Simsalabim Indonesia Clicking Here! Sahabat Sukses Salam sahabat News
Reviews Typography Blog Videos Page 0 0
0 Share Widgets Analisis Perbandingan Generic
Software Process Model Diposting oleh Mahmud Yunus , 23.47 Be the first to comment! Pada
kesempatan kali ini kelompok kami akan menganalisis perbandingan Generic Software Process
Model, sedikit singkat dan hampir mendekati. Ada 4 Software Process Model : Waterfall Model,
Spiral Model, Prototyping Model, Incremental Model. Waterfaal Model Pada gambar disamping
adalah tahapan umum dari model proses ini. Akan tetapi Roger S. Pressman memecah model ini
menjadi 6 tahapan meskipun secara garis besar sama dengan tahapan-tahapan model waterfall
pada umumnya. Berikut adalah penjelasan dari tahap-tahap yang dilakukan di dalam model ini
menurut Pressman System / Information Engineering and Modeling. Permodelan ini diawali
dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk
software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan elemenelemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut dengan Project
Definitiona. Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan
difokuskan pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para
software engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang
dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan
software) harus didokumentasikan dan ditunjukkan kepada pelanggan. Design. Proses ini
digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk
“blueprint” software sebelum coding dimulai. Desain harus dapat mengimplementasikan
kebutuhan yang telah disebutkan pada tahap sebelumnya. Seperti 2 aktivitas sebelumnya, maka
proses ini juga harus didokumentasikan sebagai konfigurasi dari software. Coding. Untuk dapat
dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya
menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui
proses coding. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya
dikerjakan oleh programmer. Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan.
Demikian juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar software
bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah
didefinisikan sebelumnya. Maintenance. Pemeliharaan suatu software diperlukan, termasuk di
dalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti
itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya,
atau ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan
diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian
sistem operasi, atau perangkat lainnya. Kekurangan yang utama dari model ini adalah kesulitan
dalam mengakomodasi perubahan setelah proses dijalani. Fase sebelumnya harus lengkap dan
selesai sebelum mengerjakan fase berikutnya. Masalah dengan waterfall : Perubahan sulit
dilakukan karena sifatnya yang kaku. Karena sifat kakunya, model ini cocok ketika kebutuhan
dikumpulkan secara lengkap sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada
kenyataannya jarang sekali konsumen/pengguna yang bisa memberikan kebutuhan secara
lengkap, perubahan kebutuhan adalah sesuatu yang wajar terjadi. Waterfall pada umumnya
digunakan untuk rekayasa sistem yang besar dimana proyek dikerjakan di beberapa tempat
berbeda, dan dibagi menjadi beberapa bagian sub-proyek Kelebihan dan Kekurangan Waterfall
Model Kelebihan : Merupakan model pengembangan paling handal dan paling lama digunakan.
Cocok untuk system software berskala besar. Cocok untuk system software yang bersifat
generic. Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan : Persyaratan system harus digambarkan dengan jelas. Rincian proses harus benarbenar jelas dan tidak boleh berubah-ubah.\Sulit untuk mengadaptasi jika terjadi perubahan
spesifikasi pada suatu tahapan pengembangan. 2. Iterative Model/Spiral Model Proses
digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process. Loop paling
dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan,
loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi menjadi
beberapa sektor : Objective settings (menentukan tujuan) : menentukan tujuan dari fase yang
ditentukan. Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan berdasarkan
resiko-resiko yang diketahui, dan sudah direncanakan. Risk assessment and reduction
(Penanganan dan pengurangan resiko) : setiap resiko dianalisis secara detil pada sektor ini.
Langkahlangkah penanganan dilakukan, misalnya membuat prototype untuk mengetahui
ketidakcocokan kebutuhan. Development and Validation (Pembangunan dan pengujian) :
Setelah evaluasi resiko, maka model pengembangan sistem dipilih. Misalnya jika resiko user
interface dominan, maka membuat prototype User Interface. Jika bagian keamanan yang
bermasalah, maka menggunakan model formal dengan perhitungan matematis, dan jika
masalahnya adalah integrasi sistem model waterfall lebih cocok. Planning : Proyek dievaluasi
atau ditinjau-ulang dan diputuskan untuk terus ke fase loop selanjutnya atau tidak. Jika
melanjutkan ke fase berikutnya rencana untuk loop selanjutnya. Pembagian sektor tidak bisa
saja dikembangkan seperti pada pembagian sektor berikut pada model variasi spiral di bawah
ini: 3. Prototyping Model Kadang-kadang klien hanya memberikan beberapa kebutuhan umum
software tanpa detil input, proses atau detil output. Di lain waktu mungkin dimana tim
pembangun (developer) tidak yakin terhadap efisiensi dari algoritma yang digunakan, tingkat
adaptasi terhadap sistem operasi atau rancangan form user interface. Ketika situasi seperti ini
terjadi model prototyping sangat membantu proses pembangunan software. Proses pada model
prototyping yang digambarkan pada gambar 1, bisa dijelaskan sebagai berikut: pengumpulan
kebutuhan : developer dan klien bertemu dan menentukan tujuan umum, kebutuhan yang
diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya. Detil kebutuhan
mungkin tidak dibicarakan disini, pada awal pengumpulan kebutuhan. perancangan :
perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang diketahui,
dan rancangan ini menjadi dasar pembuatan prototype. 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, membantu
mendapatkan kebutuhan detil lebih baik namun demikian prototype juga menimbulkan masalah:
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. 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. Agar model ini bisa
berjalan dengan baik, perlu disepakati bersama oleh klien dan developer bahwa prototype yang
dibangun merupakan alat untuk mendefinisikan kebutuhan software. Kelebihan dan Kekurangan
Prototyping Model Kelebihan : Prototype melibatkan user dalam analisa dan desain. Punya
kemampuan menangkap requirement secara konkret daripada secara abstrak. Untuk digunakan
secara standalone. Digunakan untuk memperluas SDLC. Mempersingkat waktu pengembangan
Sistem Informasi Kekurangan : Tidak ada cara untuk mengetahui banyaknya iterasi yang
diperlakukan. Proses analisis dan perancangan terlalu singkat. Mengesampingkan alternatif
pemecahan masalah. Bisanya kurang fleksible dalam mengahdapi perubahan. Protitype yang
dihasilkan tidak selamanya mudah dirubah Protype terlalu cepat selesai Customer
communication : membangun komunikasi yang baik dengan pengguna/customer. Planning :
mendefinisikan sesumber, batas waktu, informasi-informasi lain seputar proyek Risk analysis :
identifikasi resiko managemen dan teknis Engineering : pembangunan contoh-contoh aplikasi,
misalnya prototype Construction and release : pembangunan, test, install dan support. Customer
evaluation : mendapatkan feedback dari pengguna beradasarkan evaluasi PL pada fase
engineering dan fase instalasi. Pada model spiral, resiko sangat dipertimbangkan. Resiko adalah
sesuatu yang mungkin mengakibatkan kesalahan. Model spiral merupakan pendekatan yang
realistik untuk PL berskala besar. Pengguna dan pembangun bisa memahami dengan baik
software yang dibangun karena setiap kemajuan yang dicapai selama proses dapat diamati
dengan baik. Namun demikian, waktu yang cukup panjang mungkin bukan pilihan bagi
pengguna, karena waktu yang lama sama dengan biaya yang lebih besar. Kelebihan dan
Kekurangan Iterative Model Kelebihan : Dapat mengakomodasi jika terjadi perubahan pada
tahapan pengembangan yang telah dilaksanakan. Dapat disesuaikan agar system bisa dipakai
selama hidup software computer. Cocok untuk pengembangan sistem dan perangkat lunak skala
besar. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko
setiap tahapan karena system terus bekerja selama proses. Kekurangan : Hanya berlaku untuk
Short-Lifetime system. Tahapan proses tidak terlihat sedang berada ditahapan mana suatu
pekerjaan. Memerlukan alat ukur kemajuan secara regular. Perubahan yang sering terjadi dapat
merubah struktur system. Memerlukan tenaga ahli dengan kemampuan tinggi. 4. Incremental
Mode kombinasikan element-element dari waterfall dengan sifat iterasi/perulangan. elementelement dalam waterfall dikerjakan dengan hasil berupa produk dengan spesifikasi tertentu,
kemudian proses dimulai dari fase pertama hingga akhir dan menghasilkan produk dengan
spesifikasi yang lebih lengkap dari yang sebelumnya. Demikian seterusnya hingga semua
spesifikasi memenuhi kebutuhan yang ditetapkan oleh pengguna. produk hasil increment
pertama biasanya produk inti (core product), yaitu produk yang memenuhi kebutuhan dasar.
Produk tersebut digunakan oleh pengguna atau menjalani review/pengecekan detil. Hasil review
tersebut menjadi bekal untuk pembangunan pada increment berikutnya. Hal ini terus dikerjakan
sampai produk yang komplit dihasilkan. model ini cocok jika jumlah anggota tim
pengembang/pembangun PL tidak cukup. Mampu mengakomodasi perubahan secara fleksibel.
Produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang sudah
bisa berfungsi dengan spesifikasi dasar. Masalah dengan Incremental model : cocok untuk
proyek berukuran kecil (tidak lebih dari 200.000 baris coding). mungkin terjadi kesulitan untuk
memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment.
Kelebihan dan Kekurangan Incremental Model Kelebihan Incremental Model Personil bekerja
optimal Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan Mengurangi trauma karena perubahan sistem.
Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian Memaksimalkan
pengembalian modal investasi konsumen Kekurangan Incremental Model kemungkinan tiap
bagian tidak dapat diintegrasikan Dapat menjadi build and Fix Model, karena kemampuannya
untuk selalu mendapat perubahan selama proses rekayasa berlangsung Harus Open
Architecture Process pengembangan perangkat lunak (Software development process) adalah
suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak yang
bertujuan untuk mengembangkan sistem dan memberikan panduan yang bertujuan untuk
menyukseskan proyek pengembangan sistem melalui tahap demi tahap. Proses ini memiliki
beberapa model yang masing-masing menjelaskan pendekatan terhadap berbagai tugas atau
aktivitas yang terjadi selama proses. Contoh model proses pengembangan perangkat lunak
antara lain adalah proses iteratif, Extreme Programming, serta proses air terjun (waterfall)
SHARE THIS POST
Author: Mohammad Mohammad is the founder of STC Network which
offers Web Services and Online Business Solutions to clients around the globe. Read More →
Related Posts: 0 komentar: Posting Lebih Baru Posting Lama Beranda Total Tayangan Halaman
988 Subscribe now! Join 1807+ People Following SS RSSFacebookTwitterStay Updated via
Email Newsletter Popular Posts Analisis Perbandingan Generic Software Process Model Generic
View Of Software Engineering RPL (Rekayasa Perangkat Lunak) Software Process Syarat Untuk
Sukses Archive Su Mo Tu We Th Fr Sa ◄ View Archive Custom Text Widget Social Icons Follow
us on Facebook Follow us on Twitter Follow us on Google+ Follow us on Pinterest Subscribe
with RSS Followers About Me Mahmud Yunus Lihat profil lengkapku Featured Posts Latest Posts
Video Recent Comments HomeTypographySitemapServicesContact Back to top ABOUT online
casino Local News Simsalabim Indonesia Clicking Here! Sahabat Sukses Salam sahabat News
Reviews Typography Blog Videos Page 0 0
0 Share Widgets Analisis Perbandingan Generic
Software Process Model Diposting oleh Mahmud Yunus , 23.47 Be the first to comment! Pada
kesempatan kali ini kelompok kami akan menganalisis perbandingan Generic Software Process
Model, sedikit singkat dan hampir mendekati. Ada 4 Software Process Model : Waterfall Model,
Spiral Model, Prototyping Model, Incremental Model. Waterfaal Model Pada gambar disamping
adalah tahapan umum dari model proses ini. Akan tetapi Roger S. Pressman memecah model ini
menjadi 6 tahapan meskipun secara garis besar sama dengan tahapan-tahapan model waterfall
pada umumnya. Berikut adalah penjelasan dari tahap-tahap yang dilakukan di dalam model ini
menurut Pressman System / Information Engineering and Modeling. Permodelan ini diawali
dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk
software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan elemenelemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut dengan Project
Definitiona. Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan
difokuskan pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para
software engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang
dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan
software) harus didokumentasikan dan ditunjukkan kepada pelanggan. Design. Proses ini
digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi representasi ke dalam bentuk
“blueprint” software sebelum coding dimulai. Desain harus dapat mengimplementasikan
kebutuhan yang telah disebutkan pada tahap sebelumnya. Seperti 2 aktivitas sebelumnya, maka
proses ini juga harus didokumentasikan sebagai konfigurasi dari software. Coding. Untuk dapat
dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya
menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui
proses coding. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya
dikerjakan oleh programmer. Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan.
Demikian juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar software
bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah
didefinisikan sebelumnya. Maintenance. Pemeliharaan suatu software diperlukan, termasuk di
dalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti
itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya,
atau ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan
diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian
sistem operasi, atau perangkat lainnya. Kekurangan yang utama dari model ini adalah kesulitan
dalam mengakomodasi perubahan setelah proses dijalani. Fase sebelumnya harus lengkap dan
selesai sebelum mengerjakan fase berikutnya. Masalah dengan waterfall : Perubahan sulit
dilakukan karena sifatnya yang kaku. Karena sifat kakunya, model ini cocok ketika kebutuhan
dikumpulkan secara lengkap sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada
kenyataannya jarang sekali konsumen/pengguna yang bisa memberikan kebutuhan secara
lengkap, perubahan kebutuhan adalah sesuatu yang wajar terjadi. Waterfall pada umumnya
digunakan untuk rekayasa sistem yang besar dimana proyek dikerjakan di beberapa tempat
berbeda, dan dibagi menjadi beberapa bagian sub-proyek Kelebihan dan Kekurangan Waterfall
Model Kelebihan : Merupakan model pengembangan paling handal dan paling lama digunakan.
Cocok untuk system software berskala besar. Cocok untuk system software yang bersifat
generic. Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan : Persyaratan system harus digambarkan dengan jelas. Rincian proses harus benarbenar jelas dan tidak boleh berubah-ubah.\Sulit untuk mengadaptasi jika terjadi perubahan
spesifikasi pada suatu tahapan pengembangan. 2. Iterative Model/Spiral Model Proses
digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process. Loop paling
dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan,
loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi menjadi
beberapa sektor : Objective settings (menentukan tujuan) : menentukan tujuan dari fase yang
ditentukan. Batasan-batasan pada proses dan produk sudah diketahui. Perencanaan sudah
disiapkan. Resiko dari proyek sudah diketahui. Alternatif strategi sudah disiapkan berdasarkan
resiko-resiko yang diketahui, dan sudah direncanakan. Risk assessment and reduction
(Penanganan dan pengurangan resiko) : setiap resiko dianalisis secara detil pada sektor ini.
Langkahlangkah penanganan dilakukan, misalnya membuat prototype untuk mengetahui
ketidakcocokan kebutuhan. Development and Validation (Pembangunan dan pengujian) :
Setelah evaluasi resiko, maka model pengembangan sistem dipilih. Misalnya jika resiko user
interface dominan, maka membuat prototype User Interface. Jika bagian keamanan yang
bermasalah, maka menggunakan model formal dengan perhitungan matematis, dan jika
masalahnya adalah integrasi sistem model waterfall lebih cocok. Planning : Proyek dievaluasi
atau ditinjau-ulang dan diputuskan untuk terus ke fase loop selanjutnya atau tidak. Jika
melanjutkan ke fase berikutnya rencana untuk loop selanjutnya. Pembagian sektor tidak bisa
saja dikembangkan seperti pada pembagian sektor berikut pada model variasi spiral di bawah
ini: 3. Prototyping Model Kadang-kadang klien hanya memberikan beberapa kebutuhan umum
software tanpa detil input, proses atau detil output. Di lain waktu mungkin dimana tim
pembangun (developer) tidak yakin terhadap efisiensi dari algoritma yang digunakan, tingkat
adaptasi terhadap sistem operasi atau rancangan form user interface. Ketika situasi seperti ini
terjadi model prototyping sangat membantu proses pembangunan software. Proses pada model
prototyping yang digambarkan pada gambar 1, bisa dijelaskan sebagai berikut: pengumpulan
kebutuhan : developer dan klien bertemu dan menentukan tujuan umum, kebutuhan yang
diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya. Detil kebutuhan
mungkin tidak dibicarakan disini, pada awal pengumpulan kebutuhan. perancangan :
perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang diketahui,
dan rancangan ini menjadi dasar pembuatan prototype. 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, membantu
mendapatkan kebutuhan detil lebih baik namun demikian prototype juga menimbulkan masalah:
dalam membuat prototype banyak hal yang diabaikan seperti efisien