Mendidik pelanggan . Saya berharap saya bukan salah satu pelanggan Anda;)
Serius, saya mengerti Anda dalam masalah, dan Anda pikir masalahnya adalah pelanggan. Mungkin memang begitu, tetapi itu tidak masalah. Mengubah pelanggan Anda sangat sulit, sementara mengubah cara Anda bekerja dengan mereka jauh lebih mudah.
Masalahnya adalah bahwa sebagian besar pelanggan tidak menyadari semua implikasi pengembangan perangkat lunak dan Anda tidak mengetahui bisnis mereka secara terperinci.
Hanya satu hal kecil:
perubahan tidak menjadi masalah di setiap saat proyek
"Tidak peduli seberapa jauh kamu berada di jalan yang salah, berbaliklah." Pepatah Turki
Saya suka pepatah itu, jadi ketika saya bisa menggunakannya, saya senang. Terimakasih atas kesempatannya ;)
Berikut adalah beberapa solusi:
Anda harus memberi pelanggan kemungkinan untuk berubah pikiran, karena ini akan membantunya mendapatkan perangkat lunak yang tepat yang benar-benar sesuai dengan kebutuhannya. Dia akhirnya akan mendapatkan lebih banyak ide saat Anda sedang mengembangkannya.
Anda berada dalam kontrak harga tetap, jadi saya kira Anda harus mengumpulkan persyaratan, memperkirakannya dan menetapkan harga pada masing-masingnya?
Jika Anda harus membangun hal baru, gunakan proses yang sama: Anda mengubah kontrak harga tetap dengan persyaratan tambahan. Terima untuk menghapus persyaratan yang tidak berguna (tentu saja Anda belum membangunnya).
Pendekatan lain adalah menyelesaikan apa yang telah dinegosiasikan (kurang berguna dan tidak mengembangkan persyaratan) sebagai versi 1, dan meniadakan versi 2 dengan ide-ide barunya.
Solusi kedua adalah membuat iterasi dalam pengembangan seperti di Scrum . Saya belum memiliki pengalaman dengan ini dalam proyek harga tetap (karena saya tidak melakukan proyek tetap lagi), jadi saya tidak tahu apakah itu berfungsi atau tidak. Saya benar-benar memiliki banyak keraguan Scrum (atau Agile ) adalah solusi untuk semua proyek pengembangan perangkat lunak, tetapi mungkin beberapa praktik yang dijelaskan akan membantu Anda.