এর মূল অংশটি হ'ল কোডারের দায়িত্ব হ'ল কোড তৈরি করা যা কাজ করে এবং প্রয়োজনীয়তা পূরণ করে। এটির জন্য একটি নির্দিষ্ট মানসিকতা দরকার - "আমি যে কোডটি লিখছি তা এটি করার কথা বলে।"
কোডারের দায়িত্বগুলি মিশ্রিত করার অর্থ কোডারকে এখন অন্যান্য ক্রিয়াকলাপের জন্য অন্যান্য মানসিকতায় প্রবেশ করা প্রয়োজন, তবে কোডার হিসাবে একজনের পক্ষে সেই মানসিকতা থেকে সম্পূর্ণ নিজেকে তালাক দেওয়া অসম্ভব কঠিন।
পরীক্ষকের দায়িত্ব বাগ এবং স্থানগুলি সন্ধান করা যেখানে কার্যকারিতা প্রয়োজনীয় কার্যকারিতা থেকে ডাইভার্ট করে। এটির জন্য "কোডটি ভেঙে গেছে এবং আমি কীভাবে তা খুঁজে বের করব of" এর মানসিকতার প্রয়োজন।
তেমনি, একটি ব্যবসায়িক বিশ্লেষক গ্রাহক আসলে যে প্রয়োজনীয়তাগুলি জিজ্ঞাসা করছেন তা সনাক্ত করার চেষ্টা করছে। এর জন্য "অ্যাপ্লিকেশনটি এভাবে কাজ করে না তবে এটি হওয়া উচিত" এর আরেকটি মানসিকতা প্রয়োজন।
কোডার সেই অন্য যে কোনও একটিতে কাজ করার জন্য, যুক্তিসঙ্গত সম্ভাবনা রয়েছে যে মানসিকতাগুলি দ্বন্দ্ব করবে এবং কোডার সাব-পার করে দেবে:
- কোডার / কিউএ - "কোডটি নিখুঁতভাবে কাজ করে এবং আমি এটি ভেঙে যেতে পারে এমন ভাবতে পারে এমন প্রতিটি সম্ভাব্য পদ্ধতি পরিচালনা করার জন্য আমি ইতিমধ্যে কোড করে রেখেছি।"
- কোডার / বিএ - "কোডটি আমি যেভাবে চাই তা কাজ করা উচিত এবং গ্রাহক ভাবেন নি যে এগুলিকে যুক্ত করতে ঝরঝরে জিনিস হবে be
এটি বলার অপেক্ষা রাখে না যে প্রতিটি কোডার এই সমস্যার জন্য সংবেদনশীল (আমি কিছু খুব প্রতিভাশালী কোডার / কিউএ টাইপের সাথে দেখা করেছি ... যদিও তারা লিখেছিল এমন কোডের জন্য নয়)।
এটি উন্নয়ন দল পর্যন্তও প্রসারিত। কোনও উন্নয়ন দলের জন্য সেই দায়িত্বগুলির সাথে সম্পর্কিত এবং সম্পর্কিত মানসিকতার মিশ্রণ চূড়ান্ত পণ্য (কোড) নিয়ে আপস করে।