আমি কীভাবে কোনও একক প্রকল্পের বৈশিষ্ট্যটি কমতে পারি?


12

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

খারাপ দিকটি হ'ল আমি যখন কোনও বৈশিষ্ট্যটি বাস্তবায়ন করি তখন একটি নতুন উপস্থিত হয় the ভবিষ্যতে ফিচারের ক্রেপ এড়াতে আমি কী করতে পারি যাতে আমি আসলে এক বছরেরও বেশি সময় ধরে মুক্তি পেতে পারি ?

প্রকল্পটি আইওএসের আশেপাশে ভিত্তিক এবং প্রতিটি আইওএস সংস্করণ আপডেটের প্রায়শই প্রকাশিত হয় তবে শেষটি 5.1 (2011) দিয়ে ফিরে আসে। আমি স্থির এই মুক্তির চক্রটি ফিরে পেতে সক্ষম হতে চাই, তবে এটি খুব কঠিন প্রমাণিত হয়েছে।


8
আপনার প্রশ্নের wrt আরও নির্দিষ্ট হতে পারে যেখানে বৈশিষ্ট্য থেকে এসেছে? বৈশিষ্ট্যটি স্খলনের জন্য দায়ী কে? আপনি? ব্যবসায় বিশ্লেষকরা? কোম্পানির প্রেসিডেন্ট? ব্যবহারকারীদের দাবি? উত্সটি কী তা না জেনে কীভাবে বৈশিষ্ট্যটি ক্রিপ পরিচালনা করবেন সে সম্পর্কে পরামর্শ দেওয়া শক্ত। এছাড়াও, কারণ আমি ডলবার্ট পছন্দ করি: অনুসন্ধান.ডিলবার্ট / কমিক / ফিচার ১০০ ক্রাইপ ;)
হতাশ

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

@ ফ্রাস্ট্রেটেড উইথফোর্ডস ডিজাইনার আমি একমাত্র বিকাশকারী
কোল জনসন

1
নিবন্ধন করুন আমি একা. যতক্ষণ না আপনি যেমন উৎস ফোর্জ গণনা ব্যক্তি যারা প্রকল্পের উপর কাজ করে , আমি শুধুমাত্র এক নই।
কোল জনসন

4
শিপিংও একটি বৈশিষ্ট্য ... কখনও কখনও এটি অন্য কোনও বৈশিষ্ট্য বিবেচনা করার সময় এটি কেবল মনে মনে রাখতে সহায়তা করে।
মার্জন ভেনেমা

উত্তর:


21

আমার অভিজ্ঞতা হিসাবে, আপনি যদি বিকাশ করতে চান এবং আপনি যে কাজটি করতে চান তার পথে না যায় তবে এটি সবচেয়ে সহজ can আমি এটি কীভাবে করেছি তা এখানে:

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

এইভাবে, আপনি চাইলে প্রতিটি বৈশিষ্ট্যের পরে কেবল একটি রিলিজ ধাক্কা দিতে পারেন ... বা এমন কোনও রোলআপের জন্য অপেক্ষা করুন যা আপনি যে মূল্য দিতে চান তার মান দেয়।

বিঃদ্রঃ:

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

খুব উপকারী! আমি এর কিছুটা কঠোরতা পছন্দ করি।
কোল জনসন

আমি যোগ করব: আপনি একটি নতুন বৈশিষ্ট্য শেষ করার আগে কোনও নতুন বৈশিষ্ট্য শুরু করবেন না। অন্যথায় আপনি আলগা প্রান্তের কোড বেজ দিয়ে শেষ করেন যা কিছুই করতে পারে না।
টায়না

@ টায়না: এটিই আমি বোঝাতে চেয়েছি "আপনি যে বৈশিষ্ট্যটির উপর কাজ করছেন তার চেয়ে কোনও বৈশিষ্ট্যকে কখনই উচ্চ অগ্রাধিকার দেওয়া যায় না ... এটি আপনি যে কাজ করছেন তাতে বাধা দিতে পারে না ..."
স্টিভেন ইভার্স

7

উত্তরটি ট্রাইট এবং প্রায়শই অসম্ভব: অতিরিক্ত বৈশিষ্ট্য যুক্ত করতে অস্বীকার করুন।

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

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

সফ্টওয়্যারের জোয়েলে শিডিংয়ের একটি ভাল ওভারভিউ পাওয়া যাবে:

http://www.joelonsoftware.com/articles/fog0000000245.html


9
যেহেতু তিনি প্রকল্পটিতে সম্পূর্ণ একা রয়েছেন, তাই তাকে বৈশিষ্ট্যটির অনুরোধকারীকে চড় মারার কাজটি আউটসোর্স করতে হতে পারে।
ফিলিপ

2

বিকাশের অন্যতম গুরুত্বপূর্ণ পাঠটি কখন বন্ধ হবে তার সময়টি জানা।

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

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

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

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

সারসংক্ষেপ:

প্রতিটি রিলিজ প্রকল্পের সমাপ্ত 'দৃষ্টি' হতে হবে না। সেই দর্শনের দিকে এক মাইলফলক।


2

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

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

স্ট্যাশ এবং শাখাগুলির সাহায্যে আপনি আপনার ধারণাগুলির স্টক নিতে পারেন, তাদের অগ্রাধিকার দিতে পারেন এবং পরিচালনা করা টিম প্রকল্পের মতো আপনার একক প্রকল্পের প্রকাশের সুযোগ তৈরি করতে পারেন।

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.