ডেভেলপারদের মধ্যে একটি ব্যবহারকারীর গল্প ভাগ করা উচিত? [বন্ধ]


21

আমি সাধারণত এমন গল্পগুলি দেখি যার ব্যাক-এন্ড এবং ফ্রন্ট-এন্ড বিকাশ থাকে। উদাহরণস্বরূপ, কয়েকটি টেবিল এবং কিছু গতিশীল নিয়ন্ত্রণ সহ একটি বড় সংলাপ বিবেচনা করুন। আমরা বেশ কয়েকটি গল্প করব (সম্ভবত প্রতিটি টেবিলের জন্য একটি এবং গতিশীল নিয়ন্ত্রণ ব্যবস্থার জন্য আরেকটি)।

এর পরে দেব দলটি ব্যাক-এন্ডে একজন এবং সামনের প্রান্তে অন্য একজনের সাথে বিভক্ত হবে। পিছনের দিকের ব্যক্তির পক্ষে এসকিউএল স্তরটির কাঠামোর বিষয়ে চিন্তা করা সহজ করে তোলে যখন সামনের প্রান্তের ব্যক্তি বিন্যাসের মতো স্টাফগুলিতে মনোনিবেশ করে। ব্যাক- এবং ফ্রন্ট-এন্ডের মধ্যে প্রাথমিক ইন্টারফেসটি সম্মত হওয়ার পরে, দুটি বিকাশকারী স্প্রিন্টের শেষে তাদের অংশটি সম্পন্ন করার জন্য তাদের মনোযোগ নিবদ্ধ করতে পারে।

তারপরে আসে বিশৃঙ্খলা। কার গল্পের "মালিক"? "অগ্রগতি" এর অর্থ কী বা "সম্পন্ন"? ব্যাক-এন্ড এবং ফ্রন্ট-এন্ডের জন্য আমাদের দুটি পৃথক গল্প করা উচিত? যদি তা হয় তবে বৈশিষ্ট্যের উপর ভিত্তি করে ব্যবহারকারীর গল্পের ধারণাটি কি ভেঙে যায় না? আমাদের সিস্টেমে "সাব-টাস্ক" ধারণা রয়েছে যা এই সমস্যাগুলির মধ্যে কিছুটা সহজ করে। তবে উপ-কার্যগুলি একটি অতিরিক্ত জটিলতা যুক্ত করে। একটি ভাল উপায় আছে কি? এটি কি স্ক্রাম ব্যবহারের "খারাপ" উপায়?

গত কয়েক বছর ধরে আমি কয়েকটি স্থানে আগলে কিছু রূপ ব্যবহার করে আসছি। আমার এখনও কোনও অফিশিয়াল প্রশিক্ষণ নেই, সুতরাং দয়া করে কোনও ভুল পরিভাষা বা আদর্শকে ক্ষমা করুন। আমি কেবল আমাদের প্রক্রিয়াটি উন্নত করার জন্য ব্যবহারিক উপায়গুলি শেখার চেষ্টা করছি।


আপনি একেবারে সাব টাস্ক আইডিয়া দিয়ে এটি আবৃত করেছেন। এই ধারণাটি সম্পর্কে আপনার কী বোঝা শক্ত?
রিবল্ড এডি

1
সাব-টাস্কগুলি বোঝা শক্ত নয়, এটি আরও জটিলতা। সুতরাং এখন আমি অনুমান করি ডেভ ম্যানেজারটি গল্পটির মালিক এবং প্রতিটি দেবের উপ-কাজ রয়েছে। শেষ পর্যন্ত এটি প্রতি বৈশিষ্ট্যটিতে 3 টি অবজেক্টে (একটি গল্প এবং দুটি উপ-কাজ) শেষ হয়। আমার ধারণা এটি ঠিক স্বাভাবিক normal
ব্যবহারকারী 1

1
বেশিরভাগ চটজলদি প্রক্রিয়াগুলি এই ধারণাটিকে হ্রাস করে যে কোনও বিকাশকারী প্রকল্পের কোনও নির্দিষ্ট অংশের "মালিকানাধীন" থাকে। লোকেরা কেবল টাস্কগুলিতে কাজ করে, সিস্টেমের যে কোনও অংশেও এই স্পর্শটির প্রয়োজন হয়। আপনার ক্ষেত্রে, দেখে মনে হচ্ছে আপনি কোনও একক গল্প পরিচালনার জন্য কার্যকরভাবে একটি ছোট সাব-টিম তৈরি করছেন, যা আমার কাছে দুর্দান্ত বলে মনে হচ্ছে ... গল্পটি কখন করা হয় তা সিদ্ধান্ত নিতে তাদের একে অপরের সাথে যোগাযোগ করতে বলুন। এর চেয়ে আরও জটিল হওয়ার দরকার কেন দেখছি না।
জুলাই

"এটি শেষ পর্যন্ত বৈশিষ্ট্য অনুসারে 3 টি অবজেক্টে শেষ হয় (একটি গল্প এবং দুটি উপ-কার্য) I আমি অনুমান করি এটি কেবল স্বাভাবিক" " - এটি সাধারণ, তবে এটি স্বাভাবিক হওয়া উচিত নয়। একটি চৌকস গল্পটি একেবারে 2 টি গল্পে বিভক্ত হতে পারে (1 টি ফাইয়ের জন্য, 1 বিইয়ের জন্য)। একটি গল্পের উদ্দেশ্য অগত্যা কোনও বৈশিষ্ট্য নয়, তবে পণ্য মালিকের জন্য কিছু "মান" সরবরাহ করা। BE দেব প্রচুর পরিমাণে মান সরবরাহ করে এবং পৃথক হওয়া উচিত।
পোস্টকোডিজম

উত্তর:


16

একটি "গল্প" এর নাম দেওয়া হয়েছে কারণ এটি গ্রাহকের দৃষ্টিকোণ থেকে একটি সম্পূর্ণ, ভাল, গল্পের প্রতিনিধিত্ব করে । ফ্রন্ট-এন্ড বা ব্যাক-এন্ড ছাড়া গ্রাহকের মৃত্যুর জন্য কোনও ব্যবহারের ক্ষেত্রে নেই।

আপনার ক্ষেত্রে, আমি মনে করি ফ্রন্ট-এন্ড এবং ব্যাক-এন্ড উভয়ই একক গল্প হওয়া উচিত। এটি কার্যগুলিতে বিভক্ত করুন। বিকাশকারীরা তাদের বিভিন্ন কার্যের মালিক হন। এই কাজগুলি তাদের পর্যায়ক্রমে পৃথকভাবে ট্র্যাক করা যেতে পারে - ইন প্রগ্রেস, কোডিং সম্পন্ন, মডিউল টেস্টিং সম্পন্ন ইত্যাদি through

নিশ্চিত করুন যে আপনি একই গল্পে QA- অর্পিত কার্যগুলি অন্তর্ভুক্ত করেছেন - বৈধতা ছাড়াই একটি গল্প অকেজো। QA গ্রাহক দেখতে পাবে এমন শেষ থেকে শেষের সংহত গল্পটি পরীক্ষা করবে। তবেই সামগ্রিক গল্পটি সম্পন্ন হিসাবে চিহ্নিত করা উচিত। একটি আদর্শ চতুর পরিবেশে, একজন সত্যিকারের গ্রাহক বা গ্রাহক প্রক্সিও চলমান অ্যাপ্লিকেশনটিতে গল্পটি চেষ্টা করে এবং যদি সম্মতিযুক্ত প্রয়োজনীয়তা পূরণ করে তবে গৃহীত গল্পটিকে চিহ্নিত করে।

আপনি যদি দ্রুত প্রতিক্রিয়া লুপগুলি চান, তবে ব্যবহারের কেসটিকে ছোট থেকে শেষের বৈশিষ্ট্যগুলিতে ভাঙার চেষ্টা করুন। উদাহরণস্বরূপ, "গ্রাহক একটি শপিং কার্ট ব্যবহার করে জিনিস কিনতে পারে" এর মতো ব্যবহারের পরিবর্তে এটিকে "গ্রাহক একটি শপিং কার্টে পণ্য যুক্ত করতে পারেন" ইত্যাদি ইত্যাদিতে ভাগ করুন ... তারপরে প্রতিটি ছোট ব্যবহারের ক্ষেত্রে সম্পূর্ণ করুন উপরে বর্ণিত হিসাবে শেষ থেকে শেষ

সম্পাদনা: আমি কিছু উত্স দিয়ে উপরের পয়েন্টগুলি ব্যাক আপ করতে চেয়েছিলাম। একটি ভাল ব্যবহারকারীর গল্পের বৈশিষ্ট্যগুলি সংক্ষিপ্তভাবে " ইনভেস্ট " নামক একটি সংক্ষিপ্ত বিবরণ দ্বারা উপস্থাপিত হয় । এটি বিল ওয়েকে তৈরি করেছে এবং স্ক্র্যাম আন্দোলনের মাধ্যমে জনপ্রিয় হয়েছিল। গল্পগুলির আইটেমগুলি বিশেষত স্বতন্ত্র এবং উল্লম্বভাবে নোট করুন।

এখানে এবং এখানে আরও কিছু তথ্য ।


5

কার গল্পের "মালিক"?

যারাই গল্প ধরেন। একটি সাংগঠনিক দৃষ্টিকোণ থেকে তারা কী এই কাজের জন্য একজন ব্যক্তি দায়বদ্ধ। একবার আপনি দু'জন লোক পেয়ে গেলে, খুব সহজেই টাকাটি পাস করা সহজ।

ব্যাক-এন্ড এবং ফ্রন্ট-এন্ডের জন্য আমাদের দুটি পৃথক গল্প করা উচিত? যদি তা হয় তবে বৈশিষ্ট্যের উপর ভিত্তি করে ব্যবহারকারীর গল্পের ধারণাটি কি ভেঙে যায় না?

এটা নির্ভর করে. আমি উভয় উপায় কাজ দেখেছি। গল্পটি যদি দু'জন বিকাশকারী এটির জন্য পুরো সময়ের জন্য কাজ করতে পারে তবে তা সম্ভবত বিভক্ত হওয়া উচিত। যদি দুটি বিকাশকারী দুটি পৃথক দলের অংশ হয়, তবে সম্ভবত এটি বিভক্ত হওয়া উচিত। যদি দুটি বিকাশকারী বিভিন্ন স্প্রিন্টের সময় এটিতে কাজ করে তবে সম্ভবত এটি বিভক্ত হওয়া উচিত।

এটি কি স্ক্রাম ব্যবহারের "খারাপ" উপায়?

মনে রাখার মূল বিষয়টি হ'ল প্রক্রিয়াটি আপনাকে পরিবেশন করার জন্য রয়েছে, বিপরীতে নয়। ব্যবহারকারী গল্পগুলি প্রযুক্তিগত ভাবেন এবং অ প্রযুক্তিগত লোকেরা যোগাযোগের সুবিধার জন্য একটি উপায়। তারা কী চান তা বানান বানিয়ে দেয়, প্রত্যেকে আলাপ আলোচনা করে এবং তারপরে আপনি গল্পটির অগ্রগতি সম্পর্কে প্রতিক্রিয়া জানান।

প্রক্রিয়াটি যতক্ষণ আপনার পক্ষে কাজ করে ততক্ষণ এটি খারাপ হতে পারে না।


3

যেখানে আমরা স্ক্রাম মডেলগুলি প্রয়োগ করেছি, এটি একদম সঠিকভাবে আশা করা যায় যে একাধিক বিকাশকারী কোনও একক ব্যবহারকারী গল্পের সাথে জড়িত থাকতে পারে। ডেটা স্তর, ইন্টিগ্রেশন, ফ্রন্ট-এন্ড সিএসএস, অবকাঠামো ইত্যাদির জন্য কাজ থাকতে পারে a দল কোনও গল্পটি সম্পন্ন করার জন্য বিভিন্ন উপ-কার্যগুলিতে একসাথে ব্যান্ড করতে পারে।

বলা হচ্ছে, একজন ব্যক্তি গল্পটির মালিক এবং এটির অগ্রগতি আপডেট করার এবং প্রত্যেকের কাজটি নিশ্চিত করার জন্য এবং এটি এক সাথে কাজ করছে তা নিশ্চিত করার জন্য দায়বদ্ধ। এটি আমাদের জন্য সেই ব্যক্তি যিনি রিপোর্ট করেছেন যে একটি গল্প "সম্পন্ন হয়েছে"।


3

অন্যরা যেমন পরামর্শ দিয়েছে, তেমনই আমার দলও আমাদের ব্যবহারকারীর গল্পগুলিকে বিভক্ত করে। আপনি যদি নিজের ব্যবহারকারীর গল্পগুলি সফ্টওয়্যার (যেমন JIRA বা সমাবেশ) এর মাধ্যমে পরিচালনা করে থাকেন তবে এটি করা সহজ generally তারপরে গল্পের কোন অংশগুলি পাশাপাশি চলছে তা বলা সহজ।

তবে কাজের জন্য বিকল্প হ'ল প্রতিটি ব্যক্তি তাদের অংশ শেষ করার সাথে সাথে কেবল মালিকানা পুনর্নির্দিষ্ট করা। সুতরাং গল্পটি প্রায় শেষ হয়ে যায় - সম্ভবত বিকাশকারী 1 এটিকে ব্যাকএন্ডের কাজ দিয়ে শুরু করে, তারপরে ইউআই করার জন্য বিকাশকারী 2 এ চলে যায়। তারপরে যাচাইকরণের জন্য এটি আপনার কিউএ পরীক্ষকের কাছে পৌঁছেছে। আপনি যখন দেয়ালটিতে প্রকৃত কার্ড ব্যবহার করছেন বা আপনার সফ্টওয়্যারটি যদি কাজগুলি ট্র্যাক না করে তবে এই পদ্ধতিটি এমন পরিবেশে ভালভাবে কাজ করা উচিত।

তবে যে কোনও ক্ষেত্রে, আমি টেস্টিং সহ টিমটি সম্পন্ন হওয়ার বিষয়ে রাজি না হওয়া অবধি কোনও গল্পকে "সম্পন্ন" না বলার পরামর্শ দিই। এইভাবে প্রত্যেকের কাছে তাদের ইনপুট দেওয়ার সুযোগ রয়েছে। এবং আপনি যদি সম্মিলিত কোডের মালিকানা এবং কোড পর্যালোচনা সম্পর্কে ধারণার সাথে এটি একত্রিত করেন তবে প্রতিটি গল্পটি সত্যই যে কোনও উপায়েই "মালিকানাধীন"। এটি পথে বিভিন্ন ব্যক্তিকে "বরাদ্দ করা" হতে পারে, তবে কেউ বাইরে থাকলে (অসুস্থ / অবকাশ / খুব বেশি সভা? / অন্যান্য) কাজটি এখনও সম্পন্ন করতে পারে।

আমার দলটি প্রায়শই আমাদের সকালের স্ট্যান্ড আপ / এসসিআরএম সভার অংশ হিসাবে ব্যবহারকারীদের গল্প গ্রহণ করে। এটি সত্যই "সম্পন্ন" হয়েছে কিনা তা প্রত্যেকে সহজেই স্বীকৃতি দিতে বা বিতর্ক করতে পারে। অন্যান্য সময় আমরা কেবল আমাদের কিউএ ইঞ্জিনিয়ারকে এটি করতে দিয়েছি - যদি সে সন্তুষ্ট হয় যে এটি পরীক্ষা করা এবং কাজ করছে এবং সমস্ত কাজ সম্পূর্ণ হয়, তবে আমরা এটি সম্পন্ন বলি।


1

আমি আজ যেখানে আছি আমরা এই বৃহত প্রকল্পটিকে একটি "মহাকাব্য" বলি। একটি মহাকাব্য একাধিক গল্প নিয়ে গঠিত এবং এটি একাধিক স্প্রিন্ট / পুনরাবৃত্তি বিস্তৃত করতে পারে। একটি গল্প, আমাদের জন্য, সর্বদা একক বিকাশকারীকে দেওয়া হয় এবং একক স্প্রিন্টের মধ্যে ফিট করা উচিত। একটি একক কাহিনী তখন কার্যগুলিতে বিভক্ত হয়। প্রতিটি গল্প একই গল্পে একই বিকাশকারী দ্বারা সম্পন্ন হয়। কাজগুলি স্প্রিন্ট / পুনরাবৃত্তির সময়কালে গল্পটির অগ্রগতি সম্পর্কে অন্তর্দৃষ্টি দেওয়া বোঝায়। প্রতিটি গল্প সমাপ্ত হওয়ার সাথে সাথে প্রতিটি বিকাশকারী, মহাকাব্যটি অগ্রগতি দেখায়।

মহাকাব্যটির মূল বিষয় হল একটি বৃহত্তর লক্ষ্য যা অগত্যা একক স্প্রিন্ট / পুনরাবৃত্তির সাথে ফিট করে না। সময়ের সাথে সাথে গল্পগুলির সমস্ত শেষ এবং মহাকাব্য শেষ হয়েছে। এপিক্স একটি রিলিজ মধ্যে স্থাপন করা হয়।

তারপরে আসে বিশৃঙ্খলা। কার গল্পের "মালিক"? "অগ্রগতি" এর অর্থ কী বা "সম্পন্ন"?

আমরা প্রতি দুই সপ্তাহে কোড ডেমো করি যেখানে স্প্রিন্ট / পুনরাবৃত্তির জন্য গল্পগুলি স্টেকহোল্ডারদের দেখানো এবং অনুমোদিত হওয়া উচিত। এই প্রসঙ্গে একটি গল্পের জন্য "সম্পন্ন" হওয়ার অর্থ এটি কী করে তা আমি আপনাকে দেখাতে পারি। একজন বিকাশকারী তাদের গল্পের মালিক এবং এটি দেখানোর জন্য দায়বদ্ধ (এই অংশটি একটি অতি সরলকরণের মতো, তবে এই উত্তরের পক্ষে যথেষ্ট ভাল; আমরা একটি জন ব্যক্তির মাধ্যমে আমাদের ডেমোকে সমন্বিত করি)। "সম্পন্ন" এর অর্থ এটি সফলভাবে প্রদর্শিত হতে পারে। "অগ্রগতিতে" অর্থ আমার কাছে অসামান্য কাজ রয়েছে এবং গল্পটি সম্পূর্ণ নয় not একটি মহাকাব্য সম্পূর্ণ হয় যখন সেই মহাকাব্যের সমস্ত গল্প সাফল্যের সাথে প্রদর্শিত হয়।

এখন এটি সঠিক ক্ষেত্রে অগ্রগতি। আমাদের কাছে এমন গল্প এবং ডেমো রয়েছে যা ব্যর্থ হয়, ব্যবহারকারীরা অন্য কিছু চায়, ইত্যাদি ove উপরে লক্ষ্য এবং বেশিরভাগ অংশ এটি কাজ করে।


1
'"সম্পন্ন" এর অর্থ এটি সফলভাবে প্রদর্শিত হতে পারে' - আমি এ সম্পর্কে নিশ্চিত নই। সফল বিক্ষোভের অর্থ এই নয় যে এটি অগত্যা QA কেটে যায়, যদি না আপনার বিক্ষোভ প্রতিটি একক কোণার কেস জুড়ে না যে কোনও ভাল পরীক্ষক এটি ফেলে দেয়।
মাইক চেম্বারলাইন

1
আমরা কিউএ প্রকাশ করি, গল্প নয়। এই ক্ষেত্রে একটি গল্প করা হয়। এর অর্থ এই নয় যে কোনও ত্রুটিটি খোলা যায় না বা গল্পটি আবার খোলা যায় না, এর অর্থ কেবল আপনি প্রকল্পটি পরিচালনার উদ্দেশ্যে গল্পটিকে "সম্পন্ন" কলামে সরিয়ে নিয়েছেন। প্রতিটি কোণার কেস যদি একটি একক গল্পের সাথে পরীক্ষা করা হয় তবে আমরা কখনই কিছু সরবরাহ করবো না ... এটি যদি আপনি প্রতিটি কোণার ক্ষেত্রে বাস্তবতার সাথে ভাবতে পারেন।
jmq
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.