একটি সফ্টওয়্যার প্রয়োজনীয়তা নির্দিষ্টকরণ রচনা


15

স্পেসিফিকেশন লেখার বিষয়ে আমার কয়েকটি প্রশ্ন রয়েছে এবং সেগুলি হ'ল:

  1. যখন আমরা একটি সফ্টওয়্যার স্পেসিফিকেশন লিখি, "ব্যবহারকারীর প্রয়োজনীয়তা সংজ্ঞা" বিষয়বস্তুতে কেবল আমাদের "ফাংশন" এবং "সীমাবদ্ধতা" নির্দিষ্ট করতে হবে?

  2. "ব্যবহারকারী ইন্টারফেস" "ফাংশন" বা "বাধা" পড়ে?

  3. কোন সফ্টওয়্যারকে (যেমন ইউআই) বিভক্ত করা যেতে পারে তার মূল কীগুলি (প্রয়োজনীয়তা)?


এই নিবন্ধটি সহায়ক হতে পারে:
স্পেসে

উত্তর:


16

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

যদিও এটি কিছু প্রকল্পের জন্য ওভারকিল হতে পারে, তবে এটি বিবেচনা করার জন্য জিনিসগুলির একটি দুর্দান্ত চেকলিস্ট সরবরাহ করে, এমনকি যদি এই প্রয়োজনের জন্য সেই আইটেমটির আপনার প্রয়োজন হয় না এমন তালিকাটি কেবল মানসিকভাবে পরীক্ষা করে নেওয়া হয়।

এখানে টেমপ্লেট সম্পর্কিত আরও তথ্যের লিঙ্ক রয়েছে:

http://www.volere.co.uk/template.htm

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

এখানে বিভাগগুলির সংক্ষিপ্তসার এখানে দেওয়া হয়েছে (উপরের লিঙ্কটি থেকে উদ্ধৃত):

  1. প্রকল্পের উদ্দেশ্য

  2. অংশীদারদের

  3. বাধ্যতামূলক বাধা

  4. নামকরণ কনভেনশন এবং সংজ্ঞা

  5. প্রাসঙ্গিক ঘটনা এবং অনুমান

  6. কাজের সুযোগ

  7. ব্যবসায় ডেটা মডেল এবং ডেটা অভিধান

  8. পণ্যের ব্যাপ্তি

  9. কার্যকরী এবং ডেটা প্রয়োজনীয়তা

  10. প্রয়োজনীয়তাগুলি দেখুন এবং অনুভব করুন

  11. ব্যবহারযোগ্যতা এবং মানবতার প্রয়োজনীয়তা

  12. পারফরম্যান্স প্রয়োজনীয়তা

  13. অপারেশনাল এবং পরিবেশগত প্রয়োজনীয়তা

  14. রক্ষণাবেক্ষণ এবং সমর্থন প্রয়োজনীয়তা

  15. সুরক্ষা প্রয়োজনীয়তা

  16. সাংস্কৃতিক এবং রাজনৈতিক প্রয়োজনীয়তা

  17. আইনি প্রয়োজনীয়তা

  18. খোলা বিষয়

  19. অফ-শেল্ফ সমাধানগুলি

  20. নতুন সমস্যা

  21. কাজ

  22. নতুন পণ্য স্থানান্তর

  23. ঝুঁকি

  24. খরচ

  25. ব্যবহারকারী ডকুমেন্টেশন এবং প্রশিক্ষণ

  26. বিশ্রাম কক্ষ

  27. সমাধানের জন্য ধারণা


10

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

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

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

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

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

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


@gnat আমি নিবন্ধ থেকে উদ্ধৃতি প্রয়োজন বলে মনে করি না। আপনি যদি আপনার পছন্দসই অংশগুলি পছন্দ করতে চান তবে আমি আপনাকে পরামর্শ দেই যে আপনি নিজের উত্তরটি পোস্ট করুন।
জোনাথন সুইনি

আপনার উত্তরটি একটি পড়ার কথা বিবেচনা করুন অন্য দুর্গে: একটি উত্তর কখন উত্তর নয়? "আমাকে পরিষ্কার করে দিন: এই ধরণের প্রতিক্রিয়া কোনও উত্তর নয় you আপনি যদি এটি দেখেন তবে এটি পতাকাঙ্কিত করুন Mode মডারেটররা, আপনি যদি এটি পতাকাঙ্কিত দেখতে পান তবে এটি মুছুন "
জিনাত

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

6

যখন আমরা একটি সফ্টওয়্যার স্পেসিফিকেশন লিখি, "ব্যবহারকারীর প্রয়োজনীয়তা সংজ্ঞা" বিষয়বস্তুতে কেবল আমাদের "ফাংশন" এবং "সীমাবদ্ধতা" নির্দিষ্ট করতে হবে?

একটি প্রয়োজন দুটি জিনিসের সংমিশ্রণ ...

  1. জিনিসটি কি করে কার্মিক প্রয়োজন.
  2. এটা কত ভাল করে। অ-কার্যকরী প্রয়োজন বা "বাধা"

"ব্যবহারকারী ইন্টারফেস" "ফাংশন" বা "বাধা" পড়ে?

আমি বলব "ইউজার ইন্টারফেস" প্রয়োজনীয়তার বিষয়শ্রেণীতে হবে যেমন আপনি আপনার শেষ প্রশ্নটিতে চিহ্নিত করেছেন।

কোন সফ্টওয়্যারকে (যেমন ইউআই) বিভক্ত করা যেতে পারে তার মূল কীগুলি (প্রয়োজনীয়তা)?

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

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


4

কোনও প্রয়োজনের মূল প্রয়োজনটি এটি পরীক্ষামূলক able আপনি যদি কোনও প্রয়োজনীয়তা কীভাবে পরীক্ষা করতে পারেন তা নির্ধারণ করতে না পারলে, বৈষম্যগুলি হ'ল এটি লেখক যেভাবে ইচ্ছা করেছিলেন তা প্রয়োগ করা হবে না।

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

আমি মনে করি একটি ব্যবহারকারীর ইন্টারফেসের উভয় বিভাগেই প্রয়োজনীয়তা রয়েছে

সীমাবদ্ধতাসমূহ:

  • "স্টার্টআপ স্ক্রিনটি দুটি বোতাম প্রদর্শন করবে:" শুরু "এবং" থামান "
  • "ডিসপ্লে ফন্টটি 10 ​​পয়েন্টের চেয়ে কম হবে না।"

কার্যাবলী:

  • " Startকী টিপলে, সফ্টওয়্যার ডাব্লুওপিআর-তে একটি টিসিপি / আইপি সংযোগ স্থাপন করবে "

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