আমি নিশ্চিত যে এখনই আপনি আমার মন্তব্য এবং আমার অন্য পোস্টটি দেখেছেন, তাই আমি ভেবে দেখব না যে আমি আসলে উত্তরটি জানি। আমি যে অফার করতে পারি তা হ'ল আমি অন্যের কাছ থেকে যা শুনেছি / পড়েছি তার সংক্ষিপ্তসার এবং আমার নিজের অভিজ্ঞতার কিছুটি মিশ্রণে যুক্ত করে।
প্রথমত, আমি বলতে চাই যে কিছুক্ষণ আগে আমি একটি ব্লগ পেয়েছিলাম যা আমাদের নিজস্ব প্রোগ্রামার এসই সদস্য, মার্টিন ব্লোর এবং আইএমওর একটি, টিডিডি আত্ম-বাস্তবায়ন সম্পর্কে একটি নির্দিষ্ট পোস্টের সাথে সম্পর্কিত very টিডিডি হ'ল সর্বশেষ, সর্বোচ্চ স্তর যা সবকিছুকে এক সাথে সংযুক্ত করে তবে পূর্ববর্তী স্তরগুলি ছাড়াই, বিশেষত বৃহত্তম এক, পরিষ্কার ও পাঠযোগ্য কোড তৈরির নীতি ও অনুশীলন, টিডিডি কাজ করা অসম্ভব না হলেও খুব কঠিন হবে।
আমার সংস্থায়, Agile এবং TDD উভয়ই পরিচালনার মাধ্যমে আমাদের উপর চাপিয়ে দেওয়া হয়েছিল এবং প্রথমে আমরা কেবল সেগুলি সম্পাদন করেছিলাম কারণ আমাদের বলা হয়েছিল (যা চতুর বিপরীতে)। আমরা দুটিবার টিডিডি চেষ্টা করেছি এবং আমি স্বয়ংক্রিয় পরীক্ষাগুলি ব্যবহারের বিশাল প্রবক্তা হয়েছি, আমি ব্যক্তিগতভাবে শেষ প্রকাশে দলকে একসাথে চড় মেরেছি এমন সমস্ত বিষয় আমি ব্যক্তিগতভাবে ফেলে দিয়েছি। এগুলি ভঙ্গুর, দৈত্যাকার, ওয়াজুর অনুলিপি / আটকানো এবং ঘুমের বিবৃতি দিয়ে ছাঁটাই করেছিল যা তাদের সত্যই ধীরে ধীরে এবং অবিশ্বাস্যভাবে চালিয়েছিল। আপনার দলের জন্য আমার পরামর্শ: টিডিডি করবেন না ... এখনও।
আপনার পরিস্থিতি কী তা আমি জানি না কারণ আপনি উল্লেখ করেছিলেন যে আপনি মাত্র 6 মাস ধরে এই সংস্থার সাথে রয়েছেন এবং আপনি ঠিকাদার are আপনার দীর্ঘমেয়াদী লক্ষ্যগুলি কি এই সংস্থার সাথে থাকার জন্য বা চুক্তিটি শেষ হয়ে যাচ্ছে? আমি জিজ্ঞাসা করছি কারণ আপনি কিছু করলেও বাস্তবে ফলাফলগুলি দেখতে বেশ কিছুটা সময় নিতে পারে।
এছাড়াও আপনি যখন কোনও দলে যোগদান করেন, আপনার দলটির যথেষ্ট বিশ্বাসযোগ্যতা এবং সম্মান পাওয়ার আগে সাধারণত সময় লাগে যখন তারা (বিকাশকারী এবং পরিচালনা) এমনকি আপনার প্রস্তাবিত কিছু বিবেচনা করবে। আমার অভিজ্ঞতা হিসাবে, আপনি যদি অল্প কিছু আগুন জ্বালিয়ে দেন এবং অন্যদের উপর নির্ভর করতে পারে এমন দক্ষতা এবং জ্ঞান রয়েছে তা প্রদর্শন করে তবে এটি সহায়তা করে। 6 মাস যথেষ্ট কিনা তা নিশ্চিত নয়। প্রায়শই একটি নতুন, উচ্চাকাঙ্ক্ষী ব্যক্তি দলে যোগ দিতেন, তারপরে তারা কীভাবে বিশ্ব পরিবর্তন করতে পারে তা জানতে এখানে একটি পোস্ট করুন। দুঃখজনক বাস্তবতা হ'ল তারা সহজভাবে পারছে না।
সুতরাং ধরে নেওয়া আপনার নিজের দলের সম্মান এবং মনোযোগ রয়েছে। এখন কি?
প্রথমত, পরিচালনা এবং বিকাশকারী উভয়কেই সচেতন হওয়া দরকার যে সমস্যা আছে। পরিচালিত কাজের বিতরণ ফলাফলের পরিমাপ করে। যদি তারা বর্তমান পরিমাণ এবং বৈশিষ্ট্যের গুণমান নিয়ে খুশি হন তবে দুঃখজনক বাস্তবতা হ'ল তারা শুনবেন না। অন্যরা যেমন উল্লেখ করেছে, পরিচালনার সমর্থন ব্যতীত, কোনও ধরণের পরিবর্তন আনতে চূড়ান্ত কাজ হবে।
একবার আপনি যদি সহায়তা সমর্থন পান, পরবর্তী পদক্ষেপটি গভীরভাবে খনন করা এবং টিম কেন এটির মতো কাজ করে তার মূল কারণগুলি সনাক্ত করা। এই পরবর্তী বিষয়টি এমন কিছু যা এখন কিছুক্ষণের জন্য আমার ব্যক্তিগত অনুসন্ধান been এখনও পর্যন্ত এটি আমার যাত্রা:
- একবার আপনি পরিচালনার সমর্থন করা। আপনি কেন্দ্রীয়ভাবে-dictated চর্চা / প্রক্রিয়ার অনেক যে প্রবর্তনের শুরু করতে পারেন MainMa প্রতিক্রিয়ায় প্রস্তাবিত আমার প্রশ্ন । আমরা সেগুলির অনেকগুলি করেছি (যুক্তযুক্ত প্রোগ্রামিং ব্যতীত) এবং আপনি অবশ্যই সুবিধাগুলি দেখতে পাচ্ছেন। কোড পর্যালোচনাগুলি বিশেষত স্টাইলিং, ডকুমেন্টেশনকে মানায়িত করতে সহায়তা করেছিল এবং আমাদের দলের মধ্যে জ্ঞান / কৌশলগুলি ভাগ করার অনুমতি দিয়েছে। যদিও কোড পর্যালোচনাগুলি নির্ধারিত করা হয়েছিল, দলটি আসলে তাদের পছন্দ করে এবং আমরা যাচাই করা আছে এমন প্রতিটি কার্যকারিতা পর্যালোচনা করি However তবে ...
- আপনি লক্ষ্য করেছেন যে সাধারণত যে কোডটি লেখা হয় তা এখনও খুব বেশি মিলিত, নকশাটি খারাপ বা সম্পূর্ণ অভাবে। কোড পর্যালোচনাগুলি এর কয়েকটি ধরতে পারে তবে আপনি আবার লিখতে পারেন এমন অনেক কিছুই রয়েছে। ডিজাইন কেন প্রথম জায়গায় খারাপ? - প্রচুর বিকাশকারী কখনও ভাল অভ্যাসের সাথে পরিচয় হয় নি এবং প্রথমে OOD আনুষ্ঠানিকভাবে কখনও শেখানো হয়নি। অনেক লোক তাদেরকে যে কোনও কাজই দেওয়া হয়েছিল "কেবল কোড করে"।
- পরিচালনার সহায়তায় আপনি আরও প্রক্রিয়া প্রবর্তন করতে পারবেন, যেমন কোনও কোডিংয়ের আগে ডিজাইনের বিষয়ে আলোচনা করা। তবে আপনি কেবল একজন ব্যক্তি এবং মনে হয় আপনি মনোযোগ না দেওয়ার সাথে সাথেই দলটি সর্বদা তারা যা করেছে তা ফিরিয়ে দেয়। কেন?
- আরও ভাল অনুশীলনগুলি বা অভ্যাসগুলি চালু করা এবং শেখানো যেতে পারে যাতে আপনার নিয়মিত নিরীক্ষণ করতে হবে না? - এই অংশটি সক্রিয় করা এত সহজ নয়।
- কেন অন্যান্য দলের সদস্যরা নতুন অনুশীলনগুলি শিখতে বা বেছে নিতে নারাজ এবং আধুনিক সফ্টওয়্যার পদ্ধতির সাহিত্যে এত কিছু লেখা হয়েছে তখন তারা কেন সোলিড বা ডিআরওয়ির প্রতি এত প্রতিরোধী? সব ইতিবাচক পরিবর্তন আমার দলে ছিল সাথে, 2 সপ্তাহ আগে আমার কাছে তা থাকত একটি আর্গুমেন্ট ছিল আমি 2 ফাংশন যে কোডের অভিন্ন 15 লাইন ছিল রি-ফ্যাক্টর এবং সমালোচক এটা বীরত্বের বলা হয়, অপ্রয়োজনীয় প্রচেষ্টা কপি সঙ্গে কিছুই ভুল কারণ / পেস্ট শুধুমাত্র 15 লাইন। আমি এ জাতীয় মতামতের সাথে দৃ with়ভাবে একমত নই তবে আপাতত আমরা অসম্মতিতে রাজি হয়েছি। -- তাই এখন কি? এখন আমরা আমার অন্যান্য পোস্টের বিষয়টিতে পৌঁছেছি ।
- ম্যাপেল_শ্যাফ্ট এবং নিকি যেমন তাদের উত্তরে নির্দেশ করেছেন (দুঃখিত, মাইনমা , আপনি সর্বাধিক ভোট পেয়েছেন, তবে আপনি 5 ধাপ পিছনে রয়েছেন :)), আপনি এমন একটি পর্যায়ে পৌঁছেছেন যেখানে "প্রক্রিয়া" আপনাকে আর এই ফোরামে আর কেউ সহায়তা করতে পারে না "ফিক্স" কি তা আপনাকে বলতে পারে। পরবর্তী পদক্ষেপটি হ'ল ব্যক্তিদের কাছে, সম্ভবত এক-এক-এক, সম্ভবত একটি দল হিসাবে, সম্ভবত এক সময় বা অন্য কোনও সময় এবং তাদের সাথে কথা বলা। তাদের জিজ্ঞাসা করুন, কোনটি কাজ করে এবং কী করে না। তাদের চালিত করার মূল কারণটি সনাক্ত করার একমাত্র উপায় হ'ল এখন তাদের সাথে স্বতন্ত্রভাবে কথা বলা এবং এটি সন্ধান করা। এই পদক্ষেপের অংশ হিসাবে, আমি সম্প্রতি সম্পূর্ণ ভিন্ন একটি দলের সমস্যা জুড়ে এসেছি, তবে আমি এখানে জোএলের উত্তর মনে করি, যা খুব বিস্তারিত এবং অন্তর্দৃষ্টিপূর্ণ এই ক্ষেত্রেও প্রযোজ্য। সংক্ষেপে, "সংক্ষিপ্ত ফাঁস" হিসাবে পরিচালন ব্যবহার করা যেকোনও কিছুর সম্ভাব্য পন্থা, আমাদের মনে রাখতে হবে যে আমরা খাঁটি ব্যবস্থাপনা বা প্রযুক্তিগত নেতৃত্বের চেয়ে মনোবিশ্লেষণে আরও বেশি পার করতে হবে এমন অনুপ্রেরণাগুলি বোঝার জন্য আমরা মানুষের সাথে কাজ করছি।
- তাহলে এখন আপনি আপনার সতীর্থদের সাথে কথা বলছেন? আপনি তাদের জিজ্ঞাসা কি? আমি এই পরবর্তী অংশটি সম্পর্কে নিশ্চিত নই কারণ আমি এখানে কখনও আসিনি। এখানে একটি সম্ভাব্য দৃশ্য রয়েছে: প্রশ্ন: কীভাবে কোনও অচল অবস্থায় আসে না? উ: আমার দরকার নেই। প্রশ্ন: এটি সাহায্য করতে পারে। উত্তর: আমি ঠিক আছে। - কোনওরকমভাবে আপনাকে এমন একটি ধারাবাহিক শব্দ উত্পন্ন করতে হবে যা আপনার মুখ ছেড়ে দেয় এবং শ্রোতাদের চিনতে বাধ্য করে যে আপনি যদি সুযোগটি পস করছেন তার কিছু যদি তারা দেয় তবে জিনিসগুলি আরও ভাল হতে পারে। আপনি যদি এখানে ব্যর্থ হন তবে তারা কখনই নিশ্চিত হতে পারবেন না যে "প্রক্রিয়া" তাদেরকে যা কিছু করে তোলে তার আসলে কোনও মূল্য আছে। অন্যদিকে আপনি যদি এই পয়েন্টটি পেরিয়ে যান তবে আপনি সম্ভবত খুঁজে পাবেন যে আপনার আর "প্রক্রিয়া" দরকার নেই।
- আইএমও একেবারে মূলে, আপনার সতীর্থরা তাদের বর্তমান অভ্যাস / অনুশীলনগুলির সাথে কিছু ভুল না দেখলে শিখবে না। সুতরাং সম্ভবত এই সমস্ত পরবর্তী পদক্ষেপ চিত্রিত করার, সমস্যাগুলি হাইলাইট করার এবং তাদের সুস্পষ্ট করার উপায় খুঁজে পাওয়া। সর্বোপরি, আমরা সলিড / ডিআরআই নীতিগুলি ব্যবহার করে বা ডকুমেন্টেশন বজায় রাখার জন্য কেবল পাঠযোগ্য কোডটি লিখছি না কারণ এটি আমাদের একটি উষ্ণ এবং अस्पष्ट অনুভূতি দেয়। আমরা এটি করি কারণ এটি আরও ভাল মানের কোড উত্পাদন করে এবং খোলামেলাভাবে আমাদের দ্রুততর করে তোলে কোডটি। তা কি পরিমাপ করা যায়? সম্ভবত এখানেই সফ্টওয়্যার মেট্রিকগুলি আসে?
- এখানে একটি কৌতূহল ধারণা এবং এটি আসলে কাজ করে কিনা আমার কোনও ধারণা নেই (এটি একটি স্ট্যান্ডার্ড শিল্পের অনুশীলন হতে পারে, বা এটি সম্পূর্ণ অবৈধ। পরের বছর শুরু হওয়ার সাথে সাথে টেবিলে:
- অন্য অনেকের মতামতের বিপরীতে , সমস্ত উত্স ফাইলগুলির জন্য লেখক / মালিকের ধারণাটি প্রবর্তন করুন। যেমন প্র্যাকমেটিক প্রোগ্রামার পরামর্শ দেয় এটি একক ব্যক্তির কাছে মালিকানা এবং দায়বদ্ধতার বোধ তৈরি করবে যারা উত্স কোডের একাংশের জন্য দায়বদ্ধ থাকবে। এর অর্থ এই নয় যে অন্যান্য লোক কোডটি সংশোধন করতে পারে না, আমরা সকলেই একটি দল হিসাবে কাজ করছি, তবে দিনের শেষে, কোডটির মালিক যে ব্যক্তি পরিবর্তনগুলি পর্যালোচনা করার জন্য দায়বদ্ধ।
- এমন একটি উত্স রিপোজিটরি ট্রিগার তৈরি করুন যা সমস্ত চেক-ইনগুলি পর্যবেক্ষণ করে এবং বিশেষত যা বাগ ফিক্সগুলি তাদের অনুসন্ধান করে। এটি এমন একটি প্রক্রিয়া তৈরি করুন যাতে প্রতিটি বাগ ফিক্সের চেক-ইন বর্ণনায় ডানদিকে সামনের দিকে একটি রেফারেন্স শনাক্তকারী থাকে। এখন এমন একটি স্ক্রিপ্ট লিখুন যা পরিবর্তিত ফাইলগুলির একটি তালিকা পার্স করবে এবং ফাইল শিরোনামের মন্তব্য ব্লক থেকে "লেখক" কে সরিয়ে ফেলবে। এমন একটি এসকিউএল ডাটাবেস তৈরি করুন যা প্রতি ফাইল / প্রতি প্রকল্প / প্রতি লেখক প্রতি পরীক্ষিত # ত্রুটিগুলি সনাক্ত করতে পারে।
- একবার আপনার পর্যাপ্ত পরিসংখ্যান পরে, আশা করি আপনি লক্ষ্য করবেন যে আপনার কোডে অন্য কোডগুলির থেকে কিছু কম ত্রুটি / পরিবর্তন রয়েছে। এটি আপনি ব্যবহার করতে পারেন এমন হার্ড ডেটা। যদি কোনও একক প্রকল্পের গড় ত্রুটি হারের তুলনায় উল্লেখযোগ্য পরিমাণে থাকে, তবে কিছু প্রযুক্তিগত backণ পরিশোধের জন্য পরবর্তী ক্লিন-আপ / রিফ্যাক্টরিং প্রচেষ্টার প্রার্থী হিসাবে এনে দিন।
- যদি কোনও প্রকল্প বা ফাইলের গড় ত্রুটি হারের তুলনায় উল্লেখযোগ্যভাবে উপরে থাকে এবং এর একজন মালিক থাকে তবে সেই ব্যক্তির সাথে একসাথে কথা বলুন। এগুলি সমাধান করার জন্য তারা কী করতে পারে তা অত্যন্ত বিনয়ের সাথে, দ্বিধাবিভক্তভাবে তাদের জিজ্ঞাসা করুন। যেহেতু তারা মালিক তাই তাদের পরিবর্তনটি চালানো উচিত তবে আপনার পক্ষ থেকে যেকোন এবং সমস্ত সহায়তা দেওয়া উচিত। আশা করা যায়, মালিক তাদের নিজস্ব স্প্যাগেটি কোডের অনেকগুলি কারণ সনাক্ত করতে পারবেন এবং তারা সাহায্যের জন্য জিজ্ঞাসা করার সাথে সাথেই, যখন আপনি ক্রিয়াকলাপে বসেন এবং কিছু সলিউড রাখেন।