एसई और अन्य साइटों पर यहां इस "चुस्त विकास" सामान के बारे में पढ़ते हुए एक बात मुझे हमेशा आश्चर्यचकित करती है:
"पारंपरिक" सॉफ्टवेयर इंजीनियरिंग में, आप
- उपयोगकर्ता की आवश्यकताओं को एकत्रित करें,
- इन आवश्यकताओं के आधार पर एक विनिर्देश लिखें,
- ग्राहक को दें और अब तक किए गए काम के लिए उसे बिल दें,
- एक मोटा (मोटा) तकनीकी डिजाइन करें, ताकि आप कार्यान्वयन की लागत का अनुमान लगा सकें,
- कार्यान्वयन के लिए उपयोगकर्ता को एक मूल्य उद्धरण दें,
- ग्राहक के विनिर्देशन पर हस्ताक्षर करने और प्रस्ताव स्वीकार करने की प्रतीक्षा करें,
- डिजाइन, लागू, परीक्षण,
- बिल।
यदि, प्रक्रिया के दौरान, आवश्यकताओं में परिवर्तन होता है, तो आप वांछित बदलावों के लिए एक प्रस्ताव (कीमत के साथ) भेजते हैं (या यदि मुफ्त में बदलाव छोटा है, तो आप ग्राहक को पसंद करते हैं और ग्राहक अक्सर ऐसा नहीं करता है) ।
तो, यह कैसे काम करता है (आर्थिक रूप से) एक फुर्तीली परियोजना में, जहां लगातार आवश्यकता परिवर्तन प्रक्रिया का एक हिस्सा हैं?
- क्या आप हर डिज़ाइन परिवर्तन के लिए एक प्रस्ताव लिखते हैं? (यह काफी गड़बड़ नहीं होगा?)
- या क्या आप एक निश्चित मूल्य पर बातचीत करते हैं और आशा करते हैं कि ग्राहक आवश्यकताओं को अक्सर नहीं बदलता है? (जोखिम भरा हो सकता है, मैं उन ग्राहकों को जानता हूं जो इस अवसर का उपयोग इस परियोजना को पूरा करने से पहले नई सुविधाओं के लिए अनुरोध करने के लिए करेंगे।)
- या क्या आप कुल आवश्यक समय के लिए ग्राहक को बिल देते हैं? (ग्राहक के लिए जोखिम भरा हो सकता है, जो पहले से लागत नहीं जानता है।)