জটিল প্রসেসিং জড়িত অ্যাপ্লিকেশনগুলিতে কীভাবে চতুর প্রয়োগ করা যেতে পারে?


12

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

এই ধরণের অ্যাপ্লিকেশনটির জন্য ব্যবহারকারীর গল্প (প্রয়োজনীয়তা) এবং বিকাশমূলক কার্যগুলির মধ্যে সম্পর্ক বেশিরভাগ সহজলভ্য: কেবলমাত্র ব্যবহারকারী কাহিনীকে কয়েকটি কার্যে বিভক্ত করুন।

তবে অন্য ধরণের অ্যাপ্লিকেশন রয়েছে যেখানে বেশিরভাগ কোডকে জটিল প্রসেসিংয়ের সাথে মোকাবিলা করতে হয় যা ব্যবহারকারীর কাছে সরাসরি দেখা যায় না। উদাহরণগুলি হ'ল:

  • কম্পাইলার
  • স্ব-ড্রাইভিং গাড়িগুলির চিত্র বিশ্লেষণ সিস্টেম
  • তরল প্রবাহ সিমুলেশন সিস্টেম

এখানে কার্যগুলি এবং ব্যবহারকারীর গল্পগুলিকে সম্পর্কিত করা সত্যিই কঠিন হয়ে উঠতে পারে। এই সমস্যাটি কাটিয়ে ওঠার জন্য কি কৌশল আছে বা এটি আমাদের গ্রহণ এবং এটির সেরাটি তৈরি করার মতো কিছু আছে?


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

4
@ রাবারডাক: "আমি এটি ধরে নেব কারণ প্রশ্নটি একটি মিথ্যা ভিত্তির উপর ভিত্তি করে।": আইএমও, এটি এমন কোনও উত্তরকে অনুপ্রাণিত করবে যেখানে মিথ্যা ভিত্তিটি ব্যাখ্যা করা হবে, ডাউনটাও নয়।
জর্জিও 14

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

2
"চটপটে সাহিত্যের বেশিরভাগ সাহিত্যই CRUD ধরণের ব্যবসায়িক অ্যাপ্লিকেশনগুলির পক্ষে পক্ষপাতদুষ্ট বলে মনে হয়" - এবং জাভার বেশিরভাগ সাহিত্য কনসোলে "হ্যালো ওয়ার্ল্ড" স্ট্রিংটি প্রিন্ট করার দিকে পক্ষপাতদুষ্ট বলে মনে হয় (বা বিকল্প গণনাটি নবম ফিবোনাচি নম্বর)। এর অর্থ এই নয় যে জাভা তার পক্ষে একমাত্র জিনিস good উভয় ক্ষেত্রে কারণ একই: একটি ব্লগ পোস্ট বা টিউটোরিয়ালে বাস্তব উদাহরণগুলি ব্যাখ্যা করা শক্ত। [দ্রষ্টব্য: এটি মিথ্যা ভিত্তির ভিত্তিটি উদাহরণের চেষ্টা করার জন্য একটি হাইপারলোলিক মন্তব্য]]
জার্গ ডব্লু মিট্টাগ

1
চৌকস টাস্ক এবং ব্যবহারকারীর গল্প প্রয়োজন হয় না। আপনি যে কোনও স্পেসিফিকেশন আপনার ইচ্ছামত ব্যবহার করতে পারেন। পুরো বিষয়টি হ'ল নমনীয়তা।
ফ্রাঙ্ক হিলিমান

উত্তর:


9

এটি আমার পরিকল্পনার চেয়ে দীর্ঘ হতে পারে (এটি একটি মন্তব্য হিসাবে শুরু হয়েছিল), তবে আমি আশা করি যে যোগ করা দৈর্ঘ্য / বিবরণ সহায়ক হবে এবং আপনি এটিকে ন্যায়সঙ্গত বলে মনে করেন।

চতুরতা CRUD অ্যাপ্লিকেশনগুলির সাথে নির্দিষ্ট নয়

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

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

ব্যবহারকারীর গল্প! = প্রয়োজনীয়তা

এই ধরণের অ্যাপ্লিকেশনটির জন্য ব্যবহারকারীর গল্প (প্রয়োজনীয়তা) এবং বিকাশমূলক কার্যগুলির মধ্যে সম্পর্ক বেশিরভাগ সহজলভ্য: কেবলমাত্র ব্যবহারকারী কাহিনীকে কয়েকটি কার্যে বিভক্ত করুন।

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

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

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

আমি যা করতাম, এবং এটি আমার দলটি গ্রহণ করেছিল, তা ছিল ব্যবহারকারী গল্পগুলিকে কাজগুলিতে ছড়িয়ে দেওয়া। আপনার কাজগুলি আপনার যেমন প্রয়োজন / সুনির্দিষ্ট হতে পারে তত সুনির্দিষ্ট বা অস্পষ্ট হতে পারে তবে গল্পটি একটি সম্পন্ন অবস্থায় নিয়ে যাওয়ার জন্য প্রকৃত কাজের জন্য আপনার অগ্রগতি সূচক হিসাবে বোঝানো হয়েছিল।

উদাহরণ

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

ব্যবহারকারীর দৃশ্যমানতা

তবে অন্য ধরণের অ্যাপ্লিকেশন রয়েছে যেখানে বেশিরভাগ কোডকে জটিল প্রসেসিংয়ের সাথে মোকাবিলা করতে হয় যা ব্যবহারকারীর কাছে সরাসরি দেখা যায় না।

এটি কি কোনও উপায়ে ব্যবহারকারীর কাছে দৃশ্যমান করা সম্ভব?

একটি জিপিএস বিবেচনা করুন। আপনি যখন নিজের পালাটি মিস করেছেন, আপনি আসল রুট পুনরায় গণনা প্রক্রিয়াটি দেখতে পাবেন না তবে ব্যবহারকারী কিছু কার্যকর প্রতিক্রিয়া পাবেন (যেমন "পুনঃসংযোগ ...")।

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

একটি নতুন মান সমর্থন করার সময় বৈশিষ্ট্যটি স্তরে থাকতে পারে এবং এটি ব্যবহারকারী গল্পগুলিতে বিভক্ত হওয়া দরকার ছিল, আপনি কি নিশ্চিত করেছেন যে কমপক্ষে কিছু ক্ষেত্রে আপনি গল্পগুলি ব্যবহার করার চেষ্টা করছেন না যখন পরিবর্তে বৈশিষ্ট্যগুলি ব্যবহার করা উচিত ?

একটি গাড়ীর চিত্র বিশ্লেষণকে এমনভাবে অঙ্কিত করা যেতে পারে যা ব্যবহারকারীর জানাতে পারে যে গাড়ি দুর্ঘটনায় শেষ হওয়ার সম্ভাবনা হ্রাস পেয়েছে। উদাহরণ স্বরূপ:

একটি স্ব-ড্রাইভিং গাড়িতে যাত্রী হিসাবে আমার অজ্ঞাতপরিচয়টিকে ধাক্কা দিয়ে দুর্ঘটনা ঘটাতে থাকা গাড়ির সম্ভাবনাটি যতটা সম্ভব শূন্যের কাছাকাছি হওয়া দরকার, যাতে আমি আরও নিরাপদে ভ্রমণ করতে পারি।

মার্কিন যুক্তরাষ্ট্রটি উচ্চ-স্তরে ক্যাপচার করে, যে জিনিসগুলি আপনি সাধারণত ক্রিয়ামূলক এবং অ-কার্যকরী প্রয়োজনীয়তার সংমিশ্রণ ব্যবহার করে নির্দিষ্ট করতে চান - সুরক্ষা, সুরক্ষা ইত্যাদি ing

যাইহোক, একটি সিস্টেম সম্পর্কে আরও হতে পারে; উদাহরণ:

abcউপাদানগুলিতে ফাংশনটি Aধীরে ধীরে চলমান অবজেক্টগুলিকে আরও ভালভাবে সনাক্ত করতে চিত্রের তুলনা অ্যালগরিদমে সহনশীলতার প্রান্তিক মান হ্রাস করতে হবে।

আমার কাছে, এটি সহজেই আমি উপরে উল্লিখিত ব্যবহারকারীর গল্পের অধীনে একটি কাজ হয়ে উঠবA.abc , যার শিরোনাম: ফাংশনে সহনশীলতা হ্রাস করুন এবং তারপরে এটি অন্যান্য প্রাসঙ্গিক বিবরণ অন্তর্ভুক্ত করুন।

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

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

গল্প এবং কাজগুলির মধ্যে সম্পর্ক

এখানে কার্যগুলি এবং ব্যবহারকারীর গল্পগুলিকে সম্পর্কিত করা সত্যিই কঠিন হয়ে উঠতে পারে।

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

বিকাশকারীরা যুক্তরাষ্ট্রে বর্ণিত সমস্যাটি তারা যে কাজ করবে সেগুলির একটি সেটগুলিতে ভাগ করে দেবে।

আমি এটি এমন একজন হিসাবে বলছি যিনি বেশিরভাগ অংশে ব্যাক-এন্ড সার্ভার-সাইড প্রোগ্রামিং করেছিলেন যা সম্ভবত আপনি "ব্যবহারকারী হিসাবে শেষ" হিসাবে পেতে পারেন "অদৃশ্য" "

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

বিভিন্ন দৃষ্টান্ত, অনুশীলন এবং অভিজ্ঞতা

এই সমস্যাটি কাটিয়ে ওঠার জন্য কি কৌশল আছে বা এটি আমাদের গ্রহণ এবং এটির সেরাটি তৈরি করার মতো কিছু আছে?

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

আপনার পূর্বের শব্দটি দেওয়া, আপনি এখনও গল্পগুলি নিয়ে ভাবছেন যেন সেগুলি "নাম পরিবর্তিত প্রয়োজনীয়তা", যা আমি মনে করি এটি একটি ভুল ধারণা um আমি মনে করি এটি Agile এবং নন-অ্যাগিল পদ্ধতির মধ্যে মৌলিক পার্থক্য সম্পর্কে গভীরতর সমস্যার একটি লক্ষণ

দ্বিতীয়ত, আমি মনে করি যে আপনি জলপ্রপাতের তুলনায় চটপটি একটি দৃষ্টান্ত বদল হিসাবে গ্রহণ করবেন , যার অর্থ প্রক্রিয়াটির একই লক্ষ্য রয়েছে, তারা খুব ভিন্ন উপায়ে এটি নিয়ে যান। (এসভিএন বনাম গিতকে ভাবুন, যদি তা সাহায্য করে))

প্রয়োজনীয়তা এবং ব্যবহারকারীর গল্পগুলির মধ্যে ধারণাগত পার্থক্য সম্পর্কে আপনার বর্তমান বোঝার উন্নতি করার চেষ্টা করুন এবং সেগুলি একই জিনিস নয় বলে স্বীকার করুন।

আপনার স্প্রিন্ট থেকে শিখতে - পূর্ববর্তী

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

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


"ব্যবহারকারীর গল্প! = প্রয়োজনীয়তা": আমি বলতে চাইনি যে এই দুটি শব্দ প্রতিশব্দ। প্রতিটি প্রয়োজনীয়তা একটি ব্যবহারকারীর গল্প নয়। তবে আমি মনে করি যে সমস্ত ব্যবহারকারীর গল্প প্রয়োজনীয় requirements আমি প্রয়োজনীয়তাগুলিকে শ্রেণিবদ্ধ কাঠামো হিসাবে দেখি যেখানে ব্যবহারকারীর গল্পগুলি একটি নির্দিষ্ট স্তরের বিশদ। তুমি কি রাজি?
ফ্র্যাঙ্ক পাফার 11

@ ফ্র্যাঙ্কপুফার আমি মনে করি ব্যবহারকারীর গল্পগুলি দেখে মনে হচ্ছে যে তারা প্রয়োজনীয়তার একটি শ্রেণিবিন্যাসের ভিন্ন স্তর, মূলত বিভিন্ন ধারণার মিশ্রণ করে। তত্পর দিকে, আরও মত একটি অনুক্রমের দেখায়: থিমস >> মহাকাব্য >> বৈশিষ্ট্য >> ব্যবহারকারী খবর >> কার্যগুলি । প্রয়োজনীয়তাগুলি আরও বেশি traditionalতিহ্যবাহী জলপ্রপাতের পদ্ধতির কার্যকরী এবং অ-কার্যকরী প্রয়োজনগুলিতে বিভক্ত হয়, তবে আমি আসল স্তরের অংশটি পাইনি; যে বলেন, আমি বিস্মিত হবে না যদি কেউ ছিল যাও recursively ছোট "সাব" -requirements মধ্যে একটি প্রয়োজন ভেঙ্গে। যাইহোক, আপনি বিভিন্ন ধারণার মিশ্রণ করছেন।
কোড_ড্রেড

পিটিসি ইন্টিগ্রিটির মতো প্রয়োজনীয়তা পরিচালনা ব্যবস্থাগুলি প্রয়োজনীয়তাটিকে শ্রেণিবিন্যাস হিসাবে বিবেচনা করে। কোনও স্পেসিফিকেশন ডকুমেন্টে প্রয়োজনীয়তা ম্যাপ করার সময় এটি কোনও সুবিধা হতে পারে।
ফ্র্যাঙ্ক পাফার 6

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

ঠিক আছে, আমি "হিসাবে" হিসাবে "হবে না" ভুলভাবে পড়েছি। এবং হ্যাঁ, আমি আপনার উত্তরটি খুব সহায়ক বলে মনে করি এবং সম্ভবত এটি গ্রহণ করব। ব্যবহারকারীর গল্পগুলিকে প্রয়োজনীয়তা হিসাবে বিবেচনা না করার ধারণায় অভ্যস্ত হওয়ার জন্য আমার সম্ভবত কিছুটা সময় প্রয়োজন।
ফ্র্যাঙ্ক পাফার 9

4

এই ক্ষেত্রে চৌকস নীতিগুলি অবশ্যই প্রয়োগ করা যেতে পারে। কিভাবে?

  • সংকলকগণ পৃথক ব্যবহারকারী গল্পগুলিতে পরে নতুন ভাষার বৈশিষ্ট্য যুক্ত করতে পারে
  • চিত্র বিশ্লেষণ সিস্টেমে বিভিন্ন চিত্রের শ্রেণিবদ্ধকরণ হিসাবে নতুন বৈশিষ্ট্য যুক্ত থাকতে পারে
  • তরল প্রবাহ সিমুলেশন সিস্টেমগুলি তাদের সিমুলেশনের ক্ষেত্রে বিভিন্ন মডেলের দিকগুলি বিবেচনা করতে পারে

আপনাকে এক কামড়ে পুরো হাতি খেতে হবে না। চটপটে কেবল জিজ্ঞাসা করেছে যে আপনি হাতির পরবর্তী পরিবেশন করার আগে আপনি আপনার প্লেটটি পরিষ্কার করেছেন ed


তবুও আমি মনে করি যে এক বা একাধিক ব্যবহারকারীর গল্প থাকবে যা প্রচুর তথাকথিত বেস কার্যকারিতা প্রয়োজন। তারা প্রায়শই একটি একক স্প্রিন্টের সাথে খাপ খায় না। কীভাবে এটি পরিচালনা করা উচিত?
ফ্রাঙ্ক পাফার 14

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

2
@ লাইভ: এটি দুর্দান্ত হবে তবে আমি নিশ্চিত নই যে এটি কার্যকর হয়েছে কিনা। অংশে, প্রথম কয়েকটি স্প্রিন্টের পরে, সফ্টওয়্যারটি গ্রাহকের সাথে সম্পর্কিত কিছু করতে সক্ষম হবে না। আপনার প্রযুক্তিগত অগ্রগতি হবে তবে এটি গ্রাহকের সাথে যোগাযোগ করা শক্ত, যদি অসম্ভব না হয়।
ফ্রাঙ্ক পাফার 16

2
কেন? কারণ এটি আপনার প্রকল্পের কোনও বিদেশী স্টোনতে লিখেছিলেন? আমি আমার প্রয়োজনের সাথে নিজেকে খাপ খাইয়ে নিতে চটপটি কাটিয়েছি, অন্যথায় নয়। যদি আমি বলি যে আমি আপনাকে 4 সপ্তাহের মধ্যে স্কেটিং শেখাতে পারি এবং 5 তমবার আপনি একবার দাঁড়ানোতে ব্যর্থ হন, তার মানে কি আপনি স্কেটিং শিখছেন না? অথবা কেবল এটি আপনাকে আরও খানিকটা বেশি সময় নেবে? চটজলদি ইশতেহার পাথরে লেখা হয়নি বা স্ক্রমের নিয়মগুলি টেন্ড কমান্ডস are
লাইভ

2
স্প্রিন্টের বিষয়টি হ'ল গ্রাহককে আপনার পুনরাবৃত্তির অংশ করা make বিতরণ কোড ব্যবহার করে তাদের সাথে যোগাযোগ করার জন্য। পরিকল্পনা এবং প্রতিশ্রুতি নয়। এটি আপনার সমস্যা ভেঙে ফোকাস করা প্রয়োজন। এটি যে আপনার বিতরণ করা প্রথম জিনিসটি পাথরে সেট করা দরকার হয় না। এটির প্রয়োজন যে আপনি প্রমাণ করুন যে আপনি প্রতিটি স্প্রিন্টকে মূল্য দিতে পারেন।
'20:42 এ candied_orange

1

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

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

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

tl; ডাঃ কোনও স্ক্রুমিনাজি আপনার জীবনকে অতিরিক্ত কঠিন করে তুলবে না কারণ তারা মানিয়ে নিতে অনেক বেশি বর্গ। অভিযোজিত হওয়া চূড়ান্ত একটি মূল ধারণা। স্ক্রাম বা এগিলের কঠোর আনুগত্য সাধারণত মুখে বা বাস্তববাদ এবং ব্যবহারিকতার (যা আসলে সবচেয়ে ভাল কাজ করে) উড়ে যায়।


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

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

0

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

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

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


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

ঐটা আসল কথা না. যে শুধু একটি উদাহরণ ছিল। আপনি কেবল "সঞ্চিত পদ্ধতি" যেমন "উপায়" এর মতো সাধারণ কিছুতে পরিবর্তন করতে পারেন। মুল বক্তব্যটি হ'ল এটি ব্যবহারকারীর গল্প হওয়ার দরকার নেই।
ক্রিস প্র্যাট

একটি উদাহরণের পুরো বিষয়টি হ'ল উদাহরণস্বরূপ। আপনার উদাহরণ যদি "বিন্দু না হয়" তবে উদাহরণটির বিন্দুটি কী ??
রিবল্ড এডি

-3

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

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

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


5
আমার প্রশ্নের সাথে সত্যিই সম্পর্কিত নয়, তবে সর্বদা সেরা দক্ষতার সাথে একটিটিকে কোনও বৈশিষ্ট্য প্রয়োগ করতে দেওয়া বিপজ্জনক হতে পারে। এটি দলের মধ্যে জ্ঞানের বিস্তারকে বাধা দেয়। যদি রক্ষণাবেক্ষণের প্রয়োজন হয় এবং বিশেষজ্ঞ দল ছেড়ে চলে গেছে বা অস্থায়ীভাবে অনুপলব্ধ থাকে, তবে আপনি সমস্যায় পড়বেন।
ফ্রাঙ্ক পাফার 14

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