JavaRush /جاوا بلاگ /Random-UR /سافٹ ویئر ڈویلپمنٹ کے طریقہ کار

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

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

آبشار

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

سکرم

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

کنبن

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

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

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