CodeGym /جاوا بلاگ /Random-UR /سافٹ ویئر ڈویلپمنٹ کے طریقہ کار
John Squirrels
سطح
San Francisco

سافٹ ویئر ڈویلپمنٹ کے طریقہ کار

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

آبشار

آبشار کا طریقہ کار قدیم ترین طریقوں میں سے ایک ہے اور اس میں سختی سے ترتیب وار عمل درآمد شامل ہے: ہر مرحلہ اگلے مرحلے کے شروع ہونے سے پہلے مکمل ہونا چاہیے۔ دوسرے الفاظ میں، اگلے مرحلے میں منتقلی کا مطلب ہے کہ پچھلے مرحلے کا کام 100% مکمل ہو چکا ہے۔ تصویر سے پتہ چلتا ہے کہ یہ کیسے کام کرتا ہے: سب سے پہلے، ہم مسئلہ کا تجزیہ کرتے ہیں (دستاویزی کام، چیلنجز پر بات کرتے ہیں)، پھر ہم ڈیزائن کرتے ہیں (اس مرحلے پر پروجیکٹ کا ڈھانچہ شکل اختیار کرتا ہے)، اور پھر ہم کوڈ اور ٹیسٹ کرتے ہیں۔ پچھلے مراحل پر واپس جانے کی اجازت نہیں ہے۔ یہ طریقہ ان چھوٹے منصوبوں کے لیے تجویز کیا جاتا ہے جہاں ضروریات پہلے سے معلوم ہوتی ہیں اور ان میں تبدیلی کا امکان نہیں ہوتا ہے۔ سافٹ ویئر ڈویلپمنٹ کے طریقہ کار - 2فوائد:
  • ہر مرحلے پر مکمل اور مستقل دستاویزات
  • استعمال میں آسانی
  • مستحکم ضروریات
  • بجٹ اور ڈیڈ لائن پہلے سے طے شدہ ہیں۔
نقصانات:
  • دستاویزات کی ایک بڑی مقدار
  • بہت لچکدار نہیں۔
  • کلائنٹ پروڈکٹ کا ڈیمو ورژن نہیں دیکھ سکتا
  • پیچھے ہٹنے کا کوئی آپشن نہیں۔

سکرم

سکرم ایک سافٹ ویئر ڈویلپمنٹ طریقہ کار ہے جو پورے عمل کو تکرار میں تقسیم کرتا ہے۔ ہر تعامل کے اختتام پر، ٹیم پروڈکٹ کا ڈیمو ورژن فراہم کرنے کے لیے تیار ہے۔ تصویر سے پتہ چلتا ہے کہ ٹیم متوازی طور پر ترقی کے تمام مراحل سے گزرتی ہے، جس سے ہر تکرار کے اختتام پر پروجیکٹ کا مکمل حصہ حاصل کرنا ممکن ہوتا ہے۔ سافٹ ویئر ڈویلپمنٹ کے طریقہ کار - 3میں سادہ الفاظ کا استعمال کرتے ہوئے طریقہ کار کے نچوڑ کو مختصراً بیان کرنے کی کوشش کروں گا، لیکن اصطلاحات کی بہتات ہے۔ میرے خیال میں سب سے اہم چیز جوہر کو سمجھنا ہے۔ آپ کو تجربے کے ساتھ اصطلاحات یاد ہوں گی۔ تمام ترقی کو سپرنٹ میں تقسیم کیا جاتا ہے (اکثر 2-3 ہفتے)۔ ترقی کی پوری مدت اور ہر ایک الگ سپرنٹ کے لیے ایک بیک لاگ (کاموں کی فہرست) ہے ۔ ہر کام کا اپنا اسٹوری پوائنٹ ہوتا ہے (مشکل درجہ بندی)۔ اس عمل میں ہر شریک کا کردار ہے:
  • سکرم ٹیم کسی پروجیکٹ پر کام کرنے والے پیشہ ور افراد (ڈیولپرز، ٹیسٹرز، ڈیزائنرز) پر مشتمل ہوتی ہے۔
  • سکرم ماسٹر وہ شخص ہے جو اس بات کو یقینی بناتا ہے کہ اسکرم کے اصولوں کا احترام کیا جائے۔
  • پروڈکٹ کا مالک گاہک ہے۔
یہ طریقہ کار مواصلات پر منحصر ہے، لہذا ملاقاتوں کی ایک بڑی تعداد ہے:
  • اسٹینڈ اپ - یہ ایک مختصر میٹنگ ہے، جو ہر روز منعقد ہوتی ہے، جس میں ٹیم کے تمام اراکین حصہ لیتے ہیں۔ ہر شریک 3 سوالات کا جواب دیتا ہے: میں نے کیا کیا؟ میں کیا کروں گا؟ اور بلاک کرنے کے کون سے مسائل ہیں؟
  • منصوبہ بندی کی میٹنگ - یہ میٹنگ سپرنٹ کے آغاز میں ہوتی ہے۔ اس میٹنگ میں ان کاموں کی نشاندہی کی گئی ہے جو اگلے سپرنٹ میں انجام دینے چاہئیں۔
  • Retrospective - یہ میٹنگ سپرنٹ کے اختتام پر ہوتی ہے اور اس کا مقصد اس بات کی نشاندہی کرنا ہے کہ کیا اچھا کیا گیا اور کیا بہتر کیا جا سکتا ہے۔
فوائد:
  • صارف ترقی کے عمل کے دوران نتائج دیکھ سکتا ہے۔
  • ترقیاتی عمل کی روزانہ نگرانی
  • ترقی کے دوران ایڈجسٹمنٹ کرنے کی صلاحیت
  • تمام ٹیم کے ارکان کے ساتھ مواصلات قائم کیا
  • دستاویزات کی ایک چھوٹی سی رقم
نقصانات:
  • لیبر اور ترقی کے لیے درکار دیگر اخراجات کا اندازہ لگانا مشکل ہے۔
  • ترقی شروع ہونے سے پہلے رکاوٹوں کی نشاندہی کرنا مشکل ہے۔
  • دوسرے ٹیم کے ارکان کے کام میں سب کو شامل کرنے کی ضرورت ہے.

کنبن

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

سافٹ ویئر ڈویلپمنٹ کے طریقہ کار کے بارے میں ایک حتمی لفظ

جو لوگ انتظامی عہدوں پر فائز ہیں یا ان کی خواہش رکھتے ہیں انہیں سافٹ ویئر ڈویلپمنٹ کے طریقہ کار کو اچھی طرح سمجھنا چاہیے، لیکن ہر ایک کو کم از کم بنیادی باتوں کو سمجھنے کی ضرورت ہے۔ طریقہ کار ترقی کے عمل کا ایک لازمی حصہ ہیں اور نہ صرف آئی ٹی کے دائرے میں استعمال ہوتے ہیں۔ میرا مضمون پڑھنے کے لیے وقت نکالنے کے لیے آپ کا شکریہ۔ مجھے امید ہے کہ یہ آپ کے لیے مددگار تھا۔ میں نے صرف اہم نکات کو ممکن حد تک قابل رسائی اور اختصار کے ساتھ بیان کرنے کی کوشش کی۔ نتیجے کے طور پر، یہ مضمون مکمل نہیں ہے. مجھے اس کے بارے میں آپ کی رائے سن کر اور آپ کے سوالات کا جواب دینے میں خوشی ہوگی۔ اللہ بہلا کرے!
تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION