I am reading through the "Project Roles" section of a Software Development Standard Operating Procedure document. This particular document is clear that multiple roles can be assigned to a single person, but it only makes a single statement about mutually exclusive roles:

"However, a Developer may not be a Tester of any item he/she has developed, either entirely or only partially"

I am sure that there is more than this, but my internet searches have not turned up any list.

For example, I would also expect that no person should be both "Lead developer" and "project manager" (tension between technical cost and effort management).

Is there a standardised list?

  • 2
    I do not think there is a standardised list, as there are no two companies that are identical. Letting alone, it is a common practice to merge two roles to cut budget even when they are supposed to be mutually exclusive,
    – Yu Zhang
    Aug 16, 2018 at 8:25
  • Even though no two companies are the same, we do have standards to promote best-practices (ISO 15288, 12207, etc) - "design patterns" for quality. I'm looking for equivalent best practice patterns for role assignment. Yes, I know all about the common practices of merging roles. I'm also looking for signs that be used to identify risks, and this one of them.
    – KevinM
    Aug 16, 2018 at 9:18

2 Answers 2


Unlike other engineering professions, there are few to none industry-wide agreed on standards in software and this includes roles.

The document you're reading (who's doc btw?, what makes it seem authoritative?) may be touching on a related theme but it is not really about 'role'. Indeed many modern companies have eliminated roles and titles to get away from the boxing-in they do to people.

What may be more relevant here is this principle:

No-one should test their own code

This is an informal, but generally accepted best practice. I won't go into all the details of why here but I will take a moment to mention that even the knowledge that code will be reviewed by someone else leads to a much higher level of code - even if, sometimes, the code wasn't actually reviewed in a given case.

It feels to me that this is a specific principle about writing and testing code. I do not feel you can take that concept and now ask for a list of roles that are exclusive. You are looking for a general principle but in this case it is a specific thing that should not be extrapolated that way. This explains why you see one specific thing without reference to anything more general, it doesn't exist.

  • It's an internal document. I think you're missing my higher-level question. Or else I am misunderstanding your answer. I'm asking about more than just testing. I know that "developers should not test their own code" is common knowledge. But is this captured in a documented standard anywhere? To be clear, I am looking at a formal context where the process requires a development plan, and the development plan (template) explicitly requires that people are assigned to roles. Now I am looking for a reference that I can point to, to guide this assignment of roles to people, to minimize issues.
    – KevinM
    Aug 16, 2018 at 11:15
  • Some more context: This nugget/maxim/common knowledge statement is contained in an SOP that we provide that is audited (by external auditors) as part of our quality certification procedure. The definition and assignment of roles is part of our quality plan (and hence our compliance with published standards).
    – KevinM
    Aug 16, 2018 at 11:23
  • No, there is simply not a widely used or accepted industry standard. Your company will need to document this. Aug 16, 2018 at 11:30
  • Can you make a stand-alone answer from you last comment? I will be able to accept it at some future point, if this turns out to be true. BTW: I am looking for mutually exclusive role assignments as an exercise - to provide feedback to our quality department.
    – KevinM
    Aug 16, 2018 at 12:18

No, there is simply not a widely used or accepted industry standard. Your company will need to document this.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.