পরিবর্তনের জন্য খুব বেশি সংস্করণ নিয়ন্ত্রণ এবং বাগ ট্র্যাকিং ওভারহেড?


50

আমি এমন জায়গায় কাজ করি যা সিভিএস-পাগল এবং বাগজিলা-বাদাম।

  1. প্রতিটি রিলিজ বন্ধ অনেক শাখা আছে যে কেউ তাদের গণনা করতে পারে না। প্রত্যেকে অবিচ্ছিন্নভাবে স্বয়ংক্রিয়ভাবে মার্জ করে চলেছে।

  2. এই চাকরিতে কোনও তরলতা নেই । সবকিছুই লক-স্টেপ অনুভব করে । এটি কোনও সাধারণ জিনিসের জন্য এমনকি 25 টি পদক্ষেপ নেয়। এটি কারখানার উত্পাদন লাইনে থাকার মতো নয়: এটি প্রতিদিন নিজেকে কারখানা স্থাপনের মতো।

উদাহরণ পরিস্থিতি:

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

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

অন্য যে কোনও কাজে, আমি কেবল ভিতরে গিয়ে বাগটি ঠিক করতাম। আমি খুব কমই এসসিএম ব্যবহারের কথা মনে করি, যদিও আমার প্রতিটি কাজ এটি ব্যবহার করেছে: কারণ এটি অন্যান্য প্রতিটি কাজেই তারা কোনওভাবে এটিকে এড়িয়ে যায়

এমন কোনও বিন্দু আছে যেখানে প্রক্রিয়াটি পথে যায় এবং নিজেরাই শেষ হয়ে যায়? তাও কি ইঞ্জিনিয়ারিং?


8
আপনার জন্য খারাপ লাগছে :( আপনি যে কোম্পানিতে কাজ করছেন সেখানে কি সিএমএমআই 3 এবং উচ্চতর রয়েছে?
আর্টজম

6
প্রতিষ্ঠানের মতো শব্দগুলি এর আগে খারাপভাবে দংশন করেছে এবং প্রতিরক্ষা বৃদ্ধি করেছে। সম্ভবত আপনি এর ইতিহাস সম্পর্কে জিজ্ঞাসা করা উচিত?

1
যেহেতু সুপারভাইজার ধ্রুবক বিক্ষেপ উত্সাহিত আপনার কাজ একটি বাস্তব জাহান্নাম হতে হবে ...
আঙ্গুরের

57
এটি কি একটি প্রশ্ন বা একটি ব্লগ পোস্ট?
রেই মিয়াসাকা

31
যদি সফ্টওয়্যারটি পারমাণবিক বিদ্যুৎ কেন্দ্রের নিয়ন্ত্রণ ব্যবস্থা ছিল তবে এটি অযৌক্তিক বলে মনে হয় না। যদি কোনও ফেসবুক ফ্যান পৃষ্ঠার জন্য এটি অত্যন্ত অতিরিক্ত মনে হয়। প্রসঙ্গ ব্যতীত এটি বলা শক্ত যে এটি অযৌক্তিক কিনা বা না: অবশ্যই এমন প্রকল্প রয়েছে যার জন্য এটি নেই এবং অন্যরা যেখানে এটি অবশ্যই রয়েছে।
এডিএ-কিএ মার্ট-ওরা-ই

উত্তর:


89

এমন কোনও বিন্দু আছে যেখানে প্রক্রিয়াটি পথে যায় এবং নিজেরাই শেষ হয়ে যায়?

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

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

  • অ্যাপল (অ্যাপল আমি 1 ইঞ্জিনিয়ার দ্বারা তৈরি করা হয়েছিল ; ততদিনে 3 জন লোক ছিল)
  • গুগল (মূলত 2 প্রোগ্রামার তৈরি করেছেন)।
  • ফেসবুক ( মূলত 1- মানব প্রচেষ্টা)।
  • মাইক্রোসফ্ট ( 1975 সালে 2-লোক সংস্থা)।

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


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

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

11
কী, সত্যই, আপনি কি শুনতে চান না যে লোকেরা যা শুনতে চান তা বলার মাধ্যমে ভোট পাওয়া সহজ? হ্যাঁ, স্পষ্টভাবে এটা করা, আমি না অনেক সম্মান ভিড় যে এই অযোগ্য উত্তর upvotes তার আচরণ মধ্যে। আমার ধারণা আমি আপনার মতো লোকদের উপর নিখুঁত ন্যূনতম কাজ করার জন্য দোষ দিতে পারি না যখন সম্প্রদায় সেই আচরণের পুরষ্কার দেয় তবে তবুও, আমি আশা করি লোকেরা ন্যূনতমতা হিসাবে উর্ধ্বতনদের দিকে ইঙ্গিত করার পরিবর্তে সমালোচিত হলে তাদের উত্তরগুলি উন্নত করার চেষ্টা করবে।
অ্যারোনআউট

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

7
@ অ্যারোনট: এই ফোরামটি কোনও বৈজ্ঞানিক কাগজ নয়। আপনি বা আমি কেউ নন, তিনি যে প্রতিটি বাক্য লিখেছেন তার ব্যাখ্যা সরবরাহ করতে যাচ্ছে না। আপনি কেবল এই উত্তরটির জন্য তাদের জিজ্ঞাসা করছেন কারণ আপনি এটি পছন্দ করেন না। স্পষ্টতই এটি নার্ভকে আঘাত করে, তবে সভ্য পদ্ধতিতে অসম্মতি সম্পর্কে কীভাবে? বড় কর্পোরেশনগুলিকে মারধর শুরু করার জন্য, উদাহরণস্বরূপ, এই থেকে পণ্য বিবরণের কেবল দুটি প্রথম বাক্য পড়ুন: amazon.com/Radical-Inovation-Companies-
Outmart-Upstarts/dp/…

21

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

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

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

যদি আপনি নিজেকে এমন কোনও সংস্থার সন্ধান করেন যিনি মনে করেন যে এই দিক থেকে কোনও প্রত্যাবর্তনের বিন্দুটি পেরিয়ে গিয়েছে তবে আপনি নিজের কাজটি সম্পর্কে "যত্ন না নেওয়ার" (যেটি বেশিরভাগই স্থির হয়ে গেছেন) বা নরকে বের করে দেওয়ার সমাধান করতে পারেন আপনার আত্মা অক্ষত :)

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


17

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

অন্যান্য সমস্ত পরিস্থিতিতে ব্যয় ওভারহেড ব্যবসায়কে হত্যা করবে। এগিয়ে যাওয়ার সময়।


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

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

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

3
তারা যেভাবে এটি করছে এটি কেবল একটি কারণ নয়। এবং যে একের বিকাশ প্রক্রিয়া অন্যের চেয়ে ভাল তা বলা যেমন কলা থেকে কমলা ভাল as যদি তারা লাভজনক হয় এবং বেতন দিতে পারে তবে এই প্রক্রিয়াটি কিছু চতুর ভিত্তিক সংস্থার চেয়ে ভাল কাজ করে। যা লেখা হয়েছিল তা থেকে আমি দেখতে পাচ্ছি যে এই ব্যক্তিটি ভুল কাজ করছে। এমন অনেক সংস্থা রয়েছে যারা বিকাশকারীদের জন্য আরও বেশি স্বাধীনতা সরবরাহ করে।
ডেইনিয়াস

এটি চিহ্নিত করার জন্য +1 যে পরিস্থিতি (এমনকি সফ্টওয়্যারেও) রয়েছে যে এই স্তরের নিয়ন্ত্রণের প্রয়োজন।
রিওয়ালক

15

এই প্রশ্নে সত্যই দুটি প্রশ্ন রয়েছে, যার আলাদাভাবে সমাধান করা দরকার:

কিছু দলের কেন কঠোর বিকাশ প্রক্রিয়া থাকে?

এর সহজ উত্তর হ'ল কারণ যদি তারা না করে তবে ভুল হয়। ব্যয়বহুল ভুল। এটি বিকাশের ক্ষেত্রে সত্য এবং এটি আইটি ক্ষেত্রেও বাকি রয়েছে (সিসাদমিনস, ডিবিএ, ইত্যাদি)।

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

তবে যদি আপনি কখনও এই পর্যায়গুলির মধ্যে একটি সংস্থা দেখেছেন - এমনকি উজ্জ্বল, মেধাবী আইটি কর্মী সমন্বিত একটি সংস্থা - আপনি কোনও প্রক্রিয়া না করার বা অর্ধ-অ্যাসেসড প্রক্রিয়া করার ঝুঁকিগুলি বুঝতে পারবেন। আপনি দেখুন, কর্মীদের মধ্যে যোগাযোগ একটি সম্মিলিত বিস্ফোরণ সমস্যা ভুগছে ; আপনি একবারে কোনও একক দলের প্রায় 6-10 বিকাশকারীদের পর্যায়ে পৌঁছে গেলে বড় বা সমালোচনামূলক ত্রুটির প্রাথমিক কারণটি প্রতিভা বা জ্ঞাত-দক্ষতার অভাব নয়, বরং যোগাযোগের অভাব।

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

কোডিং কার্যগুলিতে অ্যালিস এবং বব দুজনই দুর্দান্ত কাজ করেছিলেন তবে তারা দুজনেই একটি খারাপ সিদ্ধান্ত নিয়ে শুরু করেছিলেন ("সবচেয়ে খারাপ যেটি ঘটতে পারে?")। দলের নেতৃত্ব বা প্রকল্প পরিচালক তাদের পোস্ট-মর্টেমের মাধ্যমে নিয়ে যান এবং আবার এড়াতে বাধা দেওয়ার জন্য একটি চেকলিস্ট বের করেন:

  • দ্বন্দ্বের প্রভাব কমাতে চেক-ইনগুলি অবশ্যই প্রতিদিন হতে হবে;
  • যে পরিবর্তনগুলি উল্লেখযোগ্যভাবে 1 দিনের বেশি সময় নেবে সেগুলি শাখাগুলিতে করা উচিত;
  • সমস্ত তাত্পর্যপূর্ণ কাজ (যেমন রিফ্যাক্টরিং হিসাবে নন-বৈশিষ্ট্যযুক্ত কাজ সহ) অবশ্যই সঠিকভাবে ট্র্যাক করে বাগ ট্র্যাকারে নির্ধারিত হতে হবে।

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

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

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

চক্রটি এগিয়ে চলেছে। আপনার দেখা প্রতিটি "নীতি" একটি বাস্তব সমস্যা সমাধানের জন্য সাধারণত প্রতিষ্ঠিত হয়েছিল। যেমন জোয়েল স্পলস্কি 2000 সালে পুরো পথটি লিখেছিলেন (পুরোপুরি আলাদা বিষয়ে আপনাকে মনে রাখবেন তবে তবুও প্রাসঙ্গিক):

আপনি যখন কোনও রেস্তোরাঁয় যান এবং আপনি এমন একটি চিহ্ন দেখতে পান যা "নো ডগস মঞ্জুরিপ্রাপ্ত নয়" বলে মনে করে আপনি মনে করতে পারেন যে এই চিহ্নটি নিখুঁতভাবে অনুমানমূলক: মিঃ রেস্তোঁরা চারপাশে কুকুর পছন্দ করে না, তাই যখন তিনি রেস্তোঁরাটি তৈরি করেছিলেন তখন তিনি সেই চিহ্নটি রেখেছিলেন।

যদি এটি ছিল সব যে যাচ্ছেন, এমন একটি "কোন সাপ" চিহ্ন হবে; সর্বোপরি, কেউ সাপ পছন্দ করে না। এবং একটি "নো এলিফ্যান্টস" চিহ্ন, কারণ তারা বসার সময় চেয়ারগুলি ভেঙে দেয়।

বাস্তব কারণে যে নিদর্শন রয়েছে ঐতিহাসিক: এটি একটি ঐতিহাসিক মার্কার ইঙ্গিত করে যে মানুষ রেস্টুরেন্টে তাদের কুকুর আনার চেষ্টা করতে ব্যবহৃত হয়।

এটি বেশিরভাগ ক্ষেত্রেই (আমি সব বলব না) সফ্টওয়্যার দলগুলির মতো: "প্রতিটি বাগ ফিক্সের জন্য আপনাকে একটি পরীক্ষার কেস যুক্ত করতে হবে" এর মতো নীতিগুলি প্রায় অদ্যাবস্থায় ইঙ্গিত দেয় যে দলটি historতিহাসিকভাবে রিগ্রেশনগুলিতে সমস্যা করেছে। যোগাযোগগুলি হ'ল সেই সমস্যাগুলির মধ্যে একটি যা প্রায়শই অক্ষমতার চেয়ে যোগাযোগ বিচ্ছেদের কারণে ঘটে। যতক্ষণ আপনি নীতিটি বোঝেন ততক্ষণ আপনি বৈধ শর্টকাট নিতে সক্ষম হবেন (যেমন আমাকে small টি ছোট বাগগুলি ঠিক করতে হয়েছিল তবে সেগুলি একই বৈশিষ্ট্যে ছিল, সুতরাং আমি তাদের 9 টির জন্য কেবল একটি পরীক্ষার কেস লিখতে পারি)।

এটি ব্যাখ্যা করে যে কেন প্রক্রিয়াগুলি রয়েছে, তবে এটি পুরো গল্প নয়। অন্য অর্ধেকটি হ'ল:

প্রক্রিয়া অনুসরণ করা এত কঠিন কেন?

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

উদাহরণস্বরূপ, মূল প্রশ্নে আমি বেশ কয়েকটি সমস্যা দেখতে পাচ্ছি:

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

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

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

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

  • বলা বাহুল্য, বাগজিলা থেকে নতুন (আরও ভাল) বাগ ট্র্যাকিং সিস্টেমে যাওয়া অভিজ্ঞতার সেই অংশটিকে অনেক কম বেদনাদায়ক করে তুলবে।

সংস্থাগুলি কেবল এই সমস্যাগুলি সমাধান না করার কারণে অগত্যা সস্তা বা বোকা নয়। তারা সকলেই জানেন যে বর্তমান প্রক্রিয়াটি কাজ করে এবং কিছু ক্ষেত্রে তারা ঝুঁকি-প্রতিরোধী এবং এ সম্পর্কে কোনও পরিবর্তন করতে নারাজ। কিন্তু সত্যিই তারা শুধু বিশ্বাস করা প্রয়োজন সুবিধা

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

পুনরুদ্ধার করার জন্য: দলগুলি এখনও এই জিনিসগুলি করেনি কারণ কেউই ম্যানেজমেন্টকে বোঝায় নি যে এটি করা এখন যথেষ্ট গুরুত্বপূর্ণ । সুতরাং উদ্যোগ গ্রহণ করুন এবং এটিকে ব্যয়-বেনিফিট সমীকরণে রূপান্তর করুন; ন্যূনতম ঝুঁকি নিয়ে সরলীকরণ / স্বয়ংক্রিয় করতে পারে এমন কার্যগুলিতে কতটা সময় ব্যয় করা হবে তা সন্ধান করুন এবং একটি নতুন সরঞ্জাম বা কৌশলটির বিরতি-বিন্দু এবং শেষ অবধি গণনা করুন। যদি তারা এখনও শোনেন না, তবে আপনার বাকি বিকল্পগুলি কী তা আপনি ইতিমধ্যে জানেন।


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

উপরের অংশটি আরও প্রসারণযোগ্য মনে হচ্ছে।

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

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

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


9

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

সুতরাং এটি একটি প্রয়োজনীয় মন্দ হতে পারে।

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

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

তবে পরিবর্তনের ন্যায্যতা পেতে আপনার যুক্তি রক্ষার জন্য প্রস্তুত থাকুন।


4
আমি একবারের মতো একটি কাজের জন্য সাক্ষাত্কার নিয়েছিলাম, এটি স্বাস্থ্যসেবা সম্পর্কিত ছিল এবং তারা প্রক্রিয়াটিকে নরক হিসাবে চিত্রিত করেছিল। তাদের মধ্যে সত্যিই ভালো লাগছে।
পঙ্ক

2
এই জাতীয় প্রক্রিয়াগুলি মনে করে যে বর্তমান বাস্তবায়ন প্রাথমিক এবং ত্রুটিমুক্ত। এই জাতীয় প্রক্রিয়াটি মূলত একটি ভাঙ্গা পণ্য লক-ইন করা আসল বিপদ।
এডিএ-কিএ মার্ট-ওরা-ই

1
"এর সঠিক মনের কেউ নেই যিনি যদি সঠিকভাবে ব্যাখ্যা করা হয় তবে দ্রুত এবং উন্নত প্রক্রিয়াটিকে অস্বীকার করবেন।" --- আমি প্রচুর এজেন্ডার কথা ভাবতে পারি যেখানে কোনও সিদ্ধান্ত নির্ধারক অনুসরণ করতে পারে যেখানে এই বিবৃতিটি সত্য নয়।

@ কেকেকেলা, এটি আপনি "আরও ভাল" প্রক্রিয়াটি কীভাবে সংজ্ঞায়িত করবেন তার উপর নির্ভর করে। সফ্টওয়্যার ইঞ্জিনিয়ার হিসাবে আমি এটিকে আরও দক্ষ হিসাবে সংজ্ঞায়িত করতে পারি, একটি প্রকল্প পরিচালক এটি আরও নিয়ন্ত্রণ হিসাবে সংজ্ঞায়িত করবেন।
ম্যাপেল_শ্যাফ্ট

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

8

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

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


8

সফ্টওয়্যার ইঞ্জিনিয়ারিংয়ের শৃঙ্খলা সহজাতভাবে "সমস্ত প্রক্রিয়া সম্পর্কে" তাই অবাক করে বলা যায় যে এটি "হয়ে গেছে" সেভাবে বিন্দুটি মিস করার মতো ঘটনা।

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

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


1
"সফটওয়্যার ইঞ্জিনিয়ারিংয়ের অনুশাসন" এর জন্য +1। এটা তোলে হয় শব্দের সব অজ্ঞান একটি শৃঙ্খলা।
ড্যান রায়

6

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

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


চমত্কার পর্যবেক্ষণ :) আমি সাক্ষাত্কার দিচ্ছি।
পংক

সিভিএসের সাথে আমি বেঁচে থাকতে পারি, কিছু সংস্থার সাক্ষাত্কারে আমার কাছে LIED TO ME এর জন্য কাজ করেছি যে আমি সিলভারলাইটের সাথে ডাব্লুসিএফ / আরআইএ ওয়েব পরিষেবাদি করবো এবং তার পরিবর্তে আমাকে একটি প্রাচীন পাওয়ারবিল্ডার অ্যাপ্লিকেশনটিতে রেখেছি এবং এখনও ভিএসএস 6 ব্যবহার করছি
ম্যাপেল_শ্যাফট

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

3

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

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

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

এন্টারপ্রাইজ জগারনোটগুলির চাকাগুলি ঘূর্ণায়মান রাখার জন্য খুব মজাদার নয়, তবে আমি খুঁজে পেয়েছি যে কিছু সংস্থায় নতুনত্ব, সৃজনশীলতা এবং উজ্জ্বলতার সামান্য বুদবুদ রয়েছে।


একটি ভয়ঙ্কর দৃশ্যে ঝিলিমিলিটি খোঁজার চেষ্টা করার জন্য +1।
বেনামে টাইপ

3

আপনি সম্ভবত একটি প্রক্রিয়া ভিত্তিক কোম্পানিতে কাজ। আমি পরিবর্তে একটি ফলাফল ভিত্তিক সংস্থার সন্ধান করার চেষ্টা করব, যেখানে এটি কীভাবে আপনি কীভাবে করেন না তা গুরুত্বপূর্ণ।

আমার সংস্থায় আমাদেরও একটি "প্রক্রিয়া" রয়েছে (তবে এটি খুব সাধারণ) .. তবে এটি যখন আসে তখন আমি নিয়মগুলি ভঙ্গ করি এবং পদক্ষেপগুলি এড়িয়ে যাই। আমি ফলাফল পেয়েছি বলে আমি শর্টকাট নিয়ে কিছু ভেঙে না ফেললে কেউ কখনও আমাকে কিছু বলবে না।


2

এমন কোনও বিন্দু আছে যেখানে প্রক্রিয়াটি পথে যায় এবং নিজেরাই শেষ হয়ে যায়? তাও কি ইঞ্জিনিয়ারিং?

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

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

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

অন্যান্য ভাষ্যকাররা যেমন উল্লেখ করেছেন যে, উচ্চ-শাখা-প্রশাখা বিকাশের মডেলের জন্য কাজের জন্য সিভিএস সেরা সরঞ্জাম নয়, তবে আমি আরও উল্লেখ করেছি যে আপনি মার্জ করার জন্য দায়বদ্ধ নন ... তাই এ নিয়ে চিন্তা করবেন না।

আপনার বেশিরভাগ অভিযোগগুলি মূলত মনে হয় "আমি বিকাশের আগে, সময় বা পরে পরীক্ষা করতে চাই না!" আসুন আপনার পদক্ষেপগুলি ভেঙে দিন, এক-এক করে পয়েন্ট করুন।

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

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

এমনকি এই প্রক্রিয়াটি সম্পর্কে দূর থেকে অস্বাভাবিক বা অত্যধিক উদ্বেগের একমাত্র জিনিসটি ভিএম জিনিস। আপনি কোন ডোমেনে কাজ করছেন তা যদি আমরা জানতাম তবে এমন একটি উপযুক্ত সুযোগ রয়েছে যা যুক্তিসঙ্গত বিবেচিত হবে।


2

মজাদার. আপনার কি পরীক্ষক আছে? তাদের কিছু করা উচিত। আমি একজন, এবং যেখানে আমি কাজ করি আমাদের একটি শালীন সমাধান রয়েছে।

একটি কার্যকরী ত্রুটির জন্য, যেমন আপনি ব্যাখ্যা করছেন, আমাদের প্রক্রিয়াটি এরকম হয়:

  1. আমি কোনও ভিএম-তে ত্রুটির জন্য পরীক্ষা করি (হয় কোনও গ্রাহক দ্বারা প্রতিবেদন করা হয়েছে, বা আমার অনুসন্ধানের সময়, বা ডাব্লু / ই)
  2. বাগ পাওয়া গেছে / তিরস্কার করা হয়েছে।
  3. আমি বাগ তৈরি। বাগগুলির মধ্যে রয়েছে:
    • ইনস্টলেশন সংক্রান্ত বিন্দু থেকে বাগ দেখার বিন্দু পর্যন্ত সম্পূর্ণ repro।
    • ভিএম এর একটি স্ন্যাপশটের একটি লিঙ্ক (যদি আমি মনে করি যে দেবের এটির প্রয়োজন হবে ... আমি যাই হোক না কেন এটি স্ন্যাপশট চাইব) it
    • সিস্টেম তথ্য, যে কোনও বিশেষ সেটিংস আমার তৈরি করা দরকার।
  4. এই বাগটি দেবকে বরাদ্দ দেওয়া হয়। তারা যখন আমি ঠিক করার কাজ করছি:
    • একটি পরীক্ষা কেস তৈরি করুন
    • ম্যানুয়াল পরীক্ষাটি একটি স্বয়ংক্রিয় পরীক্ষায় লিখুন (বা রূপান্তর করুন)

তারপরে আমি একটি রেজোলিউশনের জন্য অপেক্ষা করি এবং দেবকে তাদের যেভাবে প্রয়োজন সেভাবে সহায়তা করি। এটি সমাধান হিসাবে ফিরে এলে আমি:

  1. ফিক্সটি নিশ্চিত করতে স্বয়ংক্রিয় পরীক্ষার কেস এবং একটি ম্যানুয়াল সংস্করণ (কখনও কখনও) চালান।
  2. বাগ বন্ধ করুন।

টিএল; ডিআর: আপনার যদি পরীক্ষক না থাকে তবে আপনার কিছু দরকার। আপনার যদি কিছু থাকে তবে তারা 'তাদের অংশটি' করছেন না।


2

টম ডিমার্কো:

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

... আপনি নিয়ন্ত্রণের উপর যত বেশি মনোনিবেশ করবেন, অপেক্ষাকৃত অপ্রতুল মানের কিছু সরবরাহের জন্য প্রয়াস চালিয়ে যাওয়া এমন একটি প্রকল্পে আপনি তত বেশি কাজ করছেন।

আমার মনে, একটি সফ্টওয়্যার প্রকল্প কীভাবে নিয়ন্ত্রণ করা যায় তার চেয়ে অনেক গুরুত্বপূর্ণ যে প্রশ্নটি রয়েছে তা হল পৃথিবীতে কেন আমরা এমন অনেক প্রকল্প করছি যা এমন প্রান্তিক মান সরবরাহ করে? ...

সফটওয়্যার ইঞ্জিনিয়ারিং: এমন একটি ধারণা যার সময় এসেছে এবং চলে গেছে?


এটা কি প্রকট নয়? টাকা ইনকাম করতে. নোংরা সেক্সি টাকা।
ম্যাপেল_শ্যাফ্ট

1

"তারপরে আমি সেই একক বাগ ফিক্সের জন্য একটি শাখা তৈরি করব,"

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


1

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

আপনি কী করেছেন এবং এটি কীভাবে পরীক্ষা করা উচিত তা বর্ণনা করা সমস্ত বাগ ফিক্সগুলির পক্ষে যথেষ্ট। আমি খুঁজে পেয়েছি যে কেবল লেখাটি সমস্যাগুলি ধরতে পারে , কারণ এটি আমাকে ঝুঁকি ইত্যাদির বিষয়ে ভাবতে বাধ্য করে etc.

সুতরাং আমি মনে করি প্রক্রিয়াটি কিছুটা "শীর্ষে" হতে পারে তবে প্রকৃত সমস্যাটি প্রক্রিয়াটিকে সমর্থন করার জন্য কাস্টম স্বয়ংক্রিয় সরঞ্জামগুলির অভাব।


0

হ্যাঁ, আপনার চিন্তার প্রক্রিয়াটি সঠিক যে আপনি যা বর্ণনা করেছেন তা সম্পূর্ণ কৃপণ এবং সফ্টওয়্যারটিতে কীভাবে ভুল জিনিস হতে পারে তার সত্য প্রমাণ ration এখানে সুসংবাদটি হ'ল, সত্যিকারের প্রফুল্লতার সাথে চতুর চর্চা করার মতো অনেকগুলি সংস্থাই এখানে রয়েছে। আমি যে সংস্থার জন্য কাজ করি তা হ'ল একটি। এই দিনগুলিতে অনেকগুলি রয়েছে এবং এটি সত্যিকারের সুসংবাদ।

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

সিভিএস বা কোনও কনফিগারেশন ম্যানেজমেন্ট সিস্টেম খারাপ নয়। দুর্ভাগ্যক্রমে এটির উদ্দেশ্যটি না জেনে এটি যেভাবে ব্যবহৃত হচ্ছে তা পুরো সংস্থার জন্য! @ # $ এ এই ধরনের বেদনা সৃষ্টি করে।

অ্যাগিল আসলে কী কী তা সম্পর্কে দ্রুত ধারণা পেতে, ভেঙ্কটা সুব্রহ্মণিয়াম রচিত "অনুশীলনকারীদের চর্চা" বইটির মাধ্যমে অনুধাবন করুন। এটি খুব সহজেই বোঝা যায় এমন ভাষায় রচিত।

তোমার মঙ্গল কামনা করি!

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