ম্যানুফ্যাকচারিং বনাম সফটওয়্যার ডেভলপমেন্ট [বন্ধ]


10

এটি প্রায়শই বলা হয় যে সফটওয়্যার শিল্প উত্পাদন তুলনায় অপরিণত। বিশেষত প্রক্রিয়া চালিত হওয়া সম্পর্কিত।

প্রশ্ন : আমরা কীভাবে বিকাশকারীরা উত্পাদন শিল্পের প্রক্রিয়াগুলি থেকে শিক্ষা নিতে পারি? তাদের প্রক্রিয়াগুলি গ্রহণ করা কি সফটওয়্যার বিকাশের সাফল্যের হার বাড়িয়ে তুলতে পারে?

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

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

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

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

আমি যার সাথে কথা বলি তারা প্রত্যেকে উত্পাদন মানসিকতার সাথে একমত বলে মনে হয়। আমি কি আমার চিন্তায় একা?


1
এফওয়াইআই: আমাকে এই প্রশ্নটি জিজ্ঞাসা করতে উত্সাহিত করেছিল তা একটি সিএমএমআই বই ছিল। এটি সফ্টওয়্যার তৈরির উত্পাদন সাথে তুলনা করে এবং সফট.ইন্ডকে উপসংহারে নিয়েছে। অপরিণত ছিল।
লর্ড টাইডাস

3
আমি বলব যে একই ক্ষেত্রের আরও সঠিক সাদৃশ্যটি হ'ল আপনার কারখানাটি ডিজাইনিং এবং স্থাপনের সাথে জড়িত প্রকৌশল। সৃজনশীল / কঠিন বিটগুলি সেখানেই ঘটে। বাকিটি কেবল বাদাম এবং বোল্ট, ঠিক আমাদের মতোই বাকিগুলি কেবল 1s এবং 0s হয়।
বেনজল

1
সফ্টওয়্যার ইঞ্জিনিয়ারিং উত্পাদন সঙ্গে তুলনা করে না। এটি কারুশিল্পের সাথে তুলনা করে। এটি শিল্প প্রক্রিয়াতে হ্রাস করা যায় না।
mouviciel

1
একে সফটওয়্যার ডেভলপমেন্ট বলা হওয়ার একটি কারণ রয়েছে । সফটওয়্যার উত্পাদন না । পণ্য উত্পাদন বনাম পণ্য উত্পাদন চিন্তা করুন।
তেহনিতে

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

উত্তর:


36

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

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

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

আমরা যদি পণ্যের নকশা প্রক্রিয়াগুলি দেখে থাকি তবে দুটি শিল্পে পড়ে যাওয়ার জন্য সেরা শিল্পগুলি:

  • পণ্য দরে যেখানে উত্পাদন অনুধাবন করা যায়; যেমন রেকর্ড শিল্প (সিডির জন্য 1% বা তার চেয়ে কম দাম বেকিং এবং মুদ্রণ), গ্রাফিকাল মিডিয়া ইত্যাদি
  • যেখানে পরিমাণগুলি এত কম যে নকশার পর্বটি সর্বাধিক বিশিষ্ট ব্যয়ের কারণ (বিলাসবহুল নিবন্ধ, অত্যন্ত স্বনির্ধারিত পণ্য, কুলুঙ্গি বাজারগুলি ...)

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


2
দুর্দান্ত উত্তর। সফটওয়্যার বিকাশে সবকিছুই একটি প্রোটোটাইপ!
জেমস অ্যান্ডারসন

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

3
@ কালেব: রক্ষণাবেক্ষণ ব্যতীত, বিশেষত একটি ভাল নকশাযুক্ত পণ্যের জন্য, প্রায়শই বর্তমান পণ্যটিতে বাগ ফিক্সিং সম্পর্কে নয়, বৈশিষ্ট্যগুলি যুক্ত করার বিষয়ে, অন্য কথায় ডিজাইন যুক্ত করা এবং পরিবর্তন করা।
মার্জন ভেনেমা

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

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

10

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

তবে সফ্টওয়্যার তৈরি করা কোনও পুনরাবৃত্ত কাজ নয়, প্রতিটি মডিউল একক। যে কারণে উত্পাদন সঙ্গে তুলনা অবৈধ।


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

@ কালেব: তখন আপনার কী পাঠের অর্থ? আমি যা ভেবেছিলাম ঠিক এটাই।
সেভেনসিয়াট

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

2

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

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

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

গ্রেগ উইলসন নামে একজন আছেন যিনি কয়েক বছর আগে এর কয়েকটি সম্পর্কে চমৎকার বক্তব্য রেখেছিলেন। এখানে আলাপের লিঙ্কটি দেওয়া হয়েছে: গ্রেগ উইলসন টক

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

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

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


2

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

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

সুতরাং না, সফ্টওয়্যার ডেভলপমেন্ট প্রক্রিয়াটিকে অ্যাসেম্বলি লাইন উত্পাদনের সাথে তুলনা করা যায় না এবং যেমন "তাদের প্রক্রিয়াগুলি" ঠিক আছে না, তবে উত্পাদন শিল্পে উত্পাদনের নকশা / পণ্য নকশা পর্বটিই অনুপ্রেরণা নিতে পারে।


1

প্রশ্ন: আমরা কীভাবে বিকাশকারীরা উত্পাদন শিল্পের প্রক্রিয়াগুলি থেকে শিক্ষা নিতে পারি? তাদের প্রক্রিয়াগুলি গ্রহণ করা কি সফটওয়্যার বিকাশের সাফল্যের হার বাড়িয়ে তুলতে পারে?

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

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

  • সংস্করণ নিয়ন্ত্রণ: আপনি যেখানে কাজ করেন সেখানে সংস্করণ নিয়ন্ত্রণ ব্যবহার করার একটি খুব ভাল সুযোগ রয়েছে এবং প্রত্যেকে যখন একইভাবে ব্যবহার করে তখন সংস্করণ নিয়ন্ত্রণ স্পষ্টতই অনেক বেশি কার্যকর।

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

  • কোড পর্যালোচনা: যদি প্রতিটি পর্যালোচনার জন্য পর্যালোচনা প্রক্রিয়া এবং কোডিং মানদণ্ড পরিবর্তন হয় তবে কোনও কোড পর্যালোচনা কার্যকর হবে? অবশ্যই না.

  • সফ্টওয়্যার বিকাশ জীবনের চক্র: সম্পূর্ণ বিশ্লেষণ -> নকশা -> বাস্তবায়ন -> পরীক্ষা -> রক্ষণাবেক্ষণ চক্র একটি প্রক্রিয়া যা পরিষ্কারভাবে সংজ্ঞায়িত করা উচিত।

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

সফ্টওয়্যার তৈরি ও রক্ষণাবেক্ষণের জন্য ব্যবহৃত প্রক্রিয়াগুলি সংজ্ঞায়িত ও উন্নত করার জন্য একটি সম্পূর্ণ ক্ষেত্র নিবেদিত রয়েছে; এটিকে বলা হয় সফটওয়্যার ইঞ্জিনিয়ারিং । সিএমএমআই পড়ার সময় আপনার বিকাশ প্রক্রিয়া সম্পর্কে প্রশ্ন রয়েছে এতে অবাক হওয়ার কিছু নেই - সিএমএমআই হ'ল সফটওয়্যার ইঞ্জিনিয়ারিং ইনস্টিটিউটের একটি পণ্য ।

সফ্টওয়্যার বিকাশ ইতিমধ্যে অনেক উত্পাদন ধারণা গ্রহণ করেছে:

  • উভয় ওওপি এবং উপাদান-ভিত্তিক বিকাশের ক্ষেত্রে এলি হুইটনির বিনিময়যোগ্য অংশগুলির প্রভাব না দেখা শক্ত ।

  • সফটওয়্যার বিকাশে ব্যবহৃত প্রকল্প পরিচালনার কৌশলগুলি উত্পাদন করার জন্য তৈরির থেকে খুব আলাদা নয়। দুটি উদাহরণ হিসাবে, সফটওয়্যার ওয়ার্ল্ডটি সম্প্রতি টয়োটা শহরে কয়েক দশক আগে विकसित হওয়া কানবান ধারণাটি গ্রহণ করেছে এবং প্রথম বৈদ্যুতিন কম্পিউটার তৈরির অনেক আগে গ্যান্ট চার্টগুলি উত্পাদন করতে ব্যবহৃত হয়েছিল।

  • সিক্স সিগমার মতো মানসম্পন্ন পরিচালনার পদ্ধতিগুলি যা উত্পাদনের জন্য বিকশিত হয়েছিল সেগুলি সফ্টওয়্যার বিকাশের সাথে খাপ খাইয়ে নেওয়া হয়েছে।

ভারী প্রক্রিয়া চালিত পরিবেশ থাকা সত্ত্বেও, বিকাশকারীকে অবশ্যই "ফ্লাইতে" জিনিস তৈরিতে নিযুক্ত থাকতে হবে।

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

উড়তে জিনিসগুলি উত্পাদন চেতনা বিরুদ্ধে।

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


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

@ বৈভব গার্গ: আমি বিশ্বাস করি যে দীর্ঘমেয়াদে, ব্যবসায়ের দিক থেকে যে প্রক্রিয়াটি সবচেয়ে ভাল কাজ করে তা জয়ী হয়। যদি "সফ্টওয়্যার ইঞ্জিনিয়ারিং প্রক্রিয়া" নিয়ন্ত্রিত হয় উচ্চ মানের * গতি / ব্যয় অনুপাতের ফলাফল হয় তবে তা জিতে যায়। কখনও কখনও কাউবয় কোডিং বিরক্তিকর ভাল ফলাফল উত্পাদন বলে মনে হচ্ছে।
জুনাস পুলক্কা

1
@JoonasPulakka। আমি সম্মত হই, যে কখনও কখনও কাউবয় কোডিং ভাল ফল দেয় বলে মনে হয়। তবে এখানে কীটি "কখনও কখনও" হয়। আপনি যদি পারফরম্যান্সে পুনরাবৃত্তিযোগ্যতার লক্ষ্য রাখেন তবে আপনি যা করেন তার ক্ষেত্রে আপনাকে পুনরাবৃত্ত হতে হবে। সিপোক ইন পি ভাবুন!
বৈভব গার্গ

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

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