Roles Definitions & Responsibility
3.3 Role definitions and responsibilities¶
Clear responsibility assignment ensures that testing is part of the delivery lifecycle and not left as an afterthought. This section defines testing and environment management accountabilities using RACI matrices for cross-role clarity, followed by role-specific summaries.
3.3.1 Testing Responsibilities Overview¶
The following matrix defines clear accountability for testing activities across DHI teams:
RACI matrix¶
How to Read This Matrix: - Responsible (R): Person/team who performs the activity - Accountable (A): Person/team who owns the outcome and has final authority - Consulted (C): Person/team whose input is sought before decisions - Informed (I): Person/team who is kept updated on progress - N/A: Not Applicable, Role has no involvement in this activity
Strategy & Planning¶
| Activity | Architecture Board | Tech Lead | Product Owner | DevOps | Developer | QA |
|---|---|---|---|---|---|---|
| Define overall testing strategy | A | R | C | C | I | R |
| Define test coverage requirements | C | R/A | C | I | C | R |
| Create test plans | N/A | C | C | I | I | R/A |
| Define acceptance criteria | N/A | C | R/A | I | C | C |
| Estimate testing effort | N/A | C | I | I | R/A | R/A |
Test Design¶
| Activity | Architecture Board | Tech Lead | Product Owner | DevOps | Developer | QA |
|---|---|---|---|---|---|---|
| Design unit/integration tests | N/A | C | I | I | R/A | C |
| Design system/regression test cases | N/A | C | C | I | I | R/A |
| Design UAT scenarios | N/A | C | R | I | I | A |
| Design performance/security tests | N/A | C | I | C | I | R |
Test Execution¶
| Activity | Architecture Board | Tech Lead | Product Owner | DevOps | Developer | QA |
|---|---|---|---|---|---|---|
| Execute unit/integration tests | N/A | C | I | I | R/A | C |
| Execute system/regression tests | N/A | C | I | I | C | R/A |
| Execute UAT | N/A | C | R/A | I | I | C |
| Execute exploratory testing | N/A | C | C | I | C | R/A |
| Execute performance/security testing | C | C | I | C | I | R/A |
| Report and track bugs | N/A | C | C | I | C | R/A |
| Verify bug fixes | N/A | C | C | I | C | R/A |
CI/CD & Automation¶
| Activity | Architecture Board | Tech Lead | Product Owner | DevOps | Developer | QA |
|---|---|---|---|---|---|---|
| Implement CI/CD pipelines | N/A | C | I | R/A | C | C |
| Run automated test suites | N/A | I | I | A | R | R |
| Monitor test environments | N/A | C | I | R/A | I | C |
| Manage build quality gates | N/A | C | I | R/A | C | C |
Environment Management¶
| Activity | Architecture Board | Tech Lead | Product Owner | DevOps | Developer | QA |
|---|---|---|---|---|---|---|
| Define environment strategy | A | C | C | C | I | I |
| Provision test environments | N/A | C | I | R/A | I | C |
| Maintain environment health | N/A | C | I | R/A | I | C |
| Manage test data refresh | N/A | C | C | R/A | C | C |
| Validate environment readiness | N/A | C | I | R | I | A |
| Troubleshoot environment issues | N/A | C | I | R/A | C | C |
Quality Gates & Sign-off¶
| Activity | Architecture Board | Tech Lead | Product Owner | DevOps | Developer | QA |
|---|---|---|---|---|---|---|
| Approve architectural standards | R/A | C | I | I | I | C |
| Approve code merge | N/A | R/A | I | C | R | C |
| Approve functional quality | N/A | C | C | I | I | R/A |
| Approve business acceptance | N/A | I | R/A | I | I | C |
| Approve production release | N/A | R | A | C | I | C |
Cross-References: - For environment provisioning details, see Section 3.4 - For test data management approaches, see Section 3.5 - For CI/CD integration specifics, see Section 3.7 - For quality gate criteria, see Section 4.5
Note: While RACI release may vary by product size or maturity, accountability for quality outcomes, business acceptance, and release decisions should remain clear and with a single owner
3.3.2 Role-specific summary¶
3.3.2.1 Architecture Board¶
Primary Accountability: Define and approve testing strategy aligned with architectural standards.
Key Responsibilities:
- Approve overall testing strategy, quality gates, and tool selection
- Ensure non-functional test coverage addresses architectural concerns (performance, scalability, security, compliance aligned with ISO/IEC 5055, 25000 series, and 27001)
- Define environment strategy and approve environment costs
- Review and approve system readiness before production release based on architectural standards
- Accountable for final production release approval from a technical architecture perspective
Decision Authority: Final approval on architectural quality standards, production release readiness, and environment strategy.
Relationship to Other Roles: Consulted by Technical Leads on test design for architectural test cases; informed by QA Engineers on quality metrics.
3.3.2.2 Technical Leads¶
Primary Accountability: Translate testing strategy into executable test plans and ensure development teams deliver quality code.
Key Responsibilities:
- Define test coverage requirements for features and components.
- Define overall testing strategy (with Architecture Board accountability).
- Ensure unit and integration tests are written and maintained by developers.
- Validate code merge requests include adequate test coverage.
- Approve story/feature completion based on defined test criteria.
- Consulted on environment requirements and troubleshooting complex issues.
Decision Authority: Code merge approval and feature test completeness sign-off.
Relationship to Other Roles: Works with Developers on test implementation; consulted by DevOps on CI/CD pipeline design; provides technical input to Architecture Board.
3.3.2.3 Product Owners¶
Primary Accountability: Define business acceptance criteria and validate business value delivery.
Key Responsibilities:
- Define acceptance criteria from business perspective.
- Responsible for UAT execution and accountable for UAT outcomes.
- Provide final business acceptance sign-off before release.
- Consulted on environment costs and test data needs for UAT.
- Accountable for production release approval from business value perspective.
Decision Authority: Business acceptance and release approval from functional perspective.
Relationship to Other Roles: Collaborates with QA Engineers on UAT test design; provides business context to Technical Leads; approves release with Architecture Board.
3.3.2.4 DevOps Teams¶
Primary Accountability: Provide and maintain automated testing infrastructure, CI/CD pipelines, and test environments.
Key Responsibilities:
- Implement and maintain CI/CD pipelines with integrated automated testing.
- Run automated test suites and manage build quality gates.
- Provision, maintain, and troubleshoot test environments.
- Monitor test environment health and stability.
- Validate builds pass all automated quality gates before progression.
- Manage rollbacks when quality gates fail.
Decision Authority: Automated build progression approval based on test gate status; environment provisioning and maintenance decisions.
Relationship to Other Roles: Supports all roles with infrastructure; consulted by Technical Leads on pipeline design; works with QA Engineers on environment readiness.
3.3.2.5 Developers¶
Primary Accountability: Write, maintain, and execute tests for code they develop.
Key Responsibilities:
- Design and write unit tests, component tests, and integration tests covering functional requirements and edge cases.
- Execute tests locally and fix failures before committing code.
- Ensure code submissions meet defined coverage thresholds (see Section 4.3.1.2 for coverage requirements).
- Participate in peer review of test quality.
- Estimate and allocate time for test development.
- Report bugs discovered during development.
- Verify bug fixes with responsible party accountability.
Decision Authority: Mark code as ready for review only when all tests pass.
Relationship to Other Roles: Guided by Technical Leads on test coverage; uses infrastructure provided by DevOps; collaborates with QA Engineers on bug resolution.
3.3.2.6 QA Engineers¶
Primary Accountability: Provide independent quality validation through systematic testing and ensure test environment and data readiness.
Key Responsibilities:
- Create comprehensive test plans for functional, regression, performance, and exploratory testing.
- Design and execute system-level and regression test cases.
- Design performance and security test cases (with Architecture Board accountability for architectural standards).
- Execute exploratory testing to uncover edge cases and usability issues.
- Accountable for UAT execution and outcomes (with Product Owner responsible for execution).
- Report and track bugs with accountability.
- Accountable for verifying bug fixes.
- Validate environment readiness before testing (accountable for validation).
- Accountable for test data quality and refresh management.
- Provide independent quality sign-off before release.
Decision Authority: Final quality confirmation before release (functional, regression, non-functional testing).
Relationship to Other Roles: Works independently from development to provide objective quality assessment; collaborates with Product Owners on UAT; reports quality status to the Architecture Board.
3.3.2.7 When No QA Is Available¶
If a QA engineer is not available, testing responsibility must shift to ensure independent validation:
- Another person (not the feature author) is assigned to perform functional testing. This person assumes the QA accountabilities defined in Section 3.3.2.6.
- Acceptance criteria must always be validated against the definition of done before marking features complete.
- No feature is marked as done without independent testing by someone other than the original developer.
- All quality gates defined in Section 4.5 remain mandatory regardless of team composition.
Clear responsibility assignment ensures that testing is part of the delivery lifecycle and not left as an afterthought.