Pandangan konvensional dalam pengembangan perangkat lunak selama beberapa dekade adalah bahwa biaya perubahan cenderung meningkat secara tidak linear seiring dengan kemajuan proyek (seperti yang ditunjukkan oleh kurva hitam solid pada Gambar 1). Meskipun mudah untuk mengakomodasi perubahan di awal proyek ketika tim perangkat lunak mengumpulkan persyaratan, biaya untuk melakukan pekerjaan ini relatif kecil dan tidak akan berdampak pada hasil proyek. Namun, jika ada permintaan perubahan signifikan ketika tim berada di tengah-tengah pengujian dan validasi, biaya perubahan akan meningkat secara signifikan. Perubahan tersebut dapat memerlukan modifikasi pada desain arsitektur perangkat lunak, pembuatan beberapa komponen baru, modifikasi beberapa komponen lainnya, pengembangan pengujian baru, dan sebagainya. Biaya untuk melakukan perubahan semakin meningkat dengan cepat, dan waktu dan biaya yang dibutuhkan untuk memastikan bahwa perubahan tersebut dilakukan tanpa efek samping yang tidak diinginkan sangatlah signifikan.
Menurut para pendukung metode agility, proses agility yang didesain dengan baik dapat mengurangi biaya perubahan secara signifikan (Gambar 1, bayangan kurva padat), sehingga memungkinkan tim pengembang perangkat lunak untuk melakukan perubahan pada tahap akhir proyek tanpa mempengaruhi biaya dan waktu secara dramatis. Konsep agility melibatkan pengiriman bertahap, yang dapat mengurangi biaya perubahan dengan mengombinasikan praktik agility lain seperti pengujian unit berkelanjutan dan pemrograman berpasangan. Walaupun perdebatan tentang sejauh mana kurva biaya merata sedang berlangsung, namun bukti menunjukkan bahwa pengurangan biaya perubahan yang signifikan memang bisa dicapai.
Source: Pressman, Roger S. 2010. Software engineering : A Practitioner’s Approach (7th. Edition). New York: McGraw-Hill Higher Education.
Comments
Post a Comment