سافٹ ویئر میتھڈولوجی ایک فریم ورک ہے جو معلوماتی نظام کو تیار کرنے کے عمل کی ساخت، منصوبہ بندی اور کنٹرول کے لیے استعمال کیا جاتا ہے۔ اس میں مخصوص ڈیلیور ایبلز اور آرٹفیکٹس کی پہلے سے تعریف شامل ہے جو کہ ایک پراجیکٹ ٹیم کے ذریعے ایپلیکیشن تیار کرنے یا برقرار رکھنے کے لیے بنائی اور مکمل کی جاتی ہے۔
سافٹ ویئر ڈویلپمنٹ سے مراد کمپیوٹر سائنس کی سرگرمیوں کا ایک مجموعہ ہے جو سافٹ ویئر بنانے، ڈیزائن کرنے، تعینات کرنے اور معاونت کرنے کے عمل کے لیے وقف ہے۔ سافٹ ویئر خود ہدایات یا پروگراموں کا مجموعہ ہے جو کمپیوٹر کو بتاتا ہے کہ کیا کرنا ہے۔ یہ ہارڈ ویئر سے آزاد ہے اور کمپیوٹر کو قابل پروگرام بناتا ہے۔
کئی کلیدی اجزاء ہیں جو ہر سافٹ ویئر کی ترقی کے طریقہ کار میں شریک ہوتے ہیں۔ ان اجزاء کو سمجھنا طریقہ کار کے تجزیہ اور انتخاب کے لیے ایک عمومی فریم ورک فراہم کر سکتا ہے۔
سب سے زیادہ عام طریقوں میں سے دو روایتی (جسے واٹر فال بھی کہا جاتا ہے) اور چست ہیں، ہر ایک سافٹ ویئر ڈویلپمنٹ کے لیے مختلف نقطہ نظر کے ساتھ۔
واٹر فال ماڈل ایک ترتیب وار ڈیزائن کا عمل ہے، جو سافٹ ویئر ڈویلپمنٹ کے عمل میں استعمال ہوتا ہے، جس میں پیش رفت کو تصور، آغاز، تجزیہ، ڈیزائن، تعمیر، جانچ، پیداوار/عمل درآمد کے مراحل کے ذریعے مسلسل نیچے کی طرف بہتا ہوا دیکھا جاتا ہے (ایک آبشار کی طرح) دیکھ بھال.
فرتیلی طریقہ کار روایتی پراجیکٹ مینجمنٹ کا متبادل ہے، جو عام طور پر سافٹ ویئر ڈویلپمنٹ میں استعمال ہوتا ہے۔ یہ ٹیموں کو انکریمنٹل، تکراری کام کے کیڈینس کے ذریعے غیر متوقع طور پر جواب دینے میں مدد کرتا ہے، جسے سپرنٹ کے نام سے جانا جاتا ہے۔ فرتیلی طریقہ کار وقت کے ساتھ ساتھ تقاضوں کو تبدیل کرنے کے لیے کھلا ہے اور آخری صارفین کی طرف سے مستقل رائے کی حوصلہ افزائی کرتا ہے۔
چست اور روایتی طریقہ کار کے درمیان انتخاب کا انحصار کئی عوامل پر ہوتا ہے جن میں پروجیکٹ کی گنجائش، کلائنٹ کی ضروریات، ٹیم کا سائز، اور رسک مینجمنٹ شامل ہیں۔ کوئی ایک طریقہ کار اعلیٰ نہیں ہے۔ بہترین نقطہ نظر وہ ہے جو خاص منصوبے کی ضروریات کے مطابق ہو۔
آخر میں، سافٹ ویئر کے مختلف طریقوں اور ان کے اجزاء کو سمجھنا سافٹ ویئر پروجیکٹس کی کامیاب ترقی کے لیے بہت ضروری ہے۔ ہر منصوبے کو اس کی مخصوص ضروریات کی بنیاد پر مختلف نقطہ نظر کی ضرورت ہو سکتی ہے۔ یہ پروجیکٹ مینیجر یا ترقیاتی ٹیم کی ذمہ داری ہے کہ وہ پروجیکٹ کو کامیابی کی طرف لے جانے کے لیے سب سے زیادہ قابل اطلاق طریقہ کار کا انتخاب کرے۔