quality-attributes

star 0

Eight quality attributes for software evaluation: supportability, extendability, maintainability, testability, performance, safety, security, observability. Use when conducting design reviews or code reviews to evaluate all quality dimensions.

astavonin By astavonin schedule Updated 6/11/2026

name: quality-attributes description: Eight quality attributes for software evaluation: supportability, extendability, maintainability, testability, performance, safety, security, observability. Use when conducting design reviews or code reviews to evaluate all quality dimensions. allowed-tools: Glob, Grep, Read, WebFetch, WebSearch compatibility: claude-code metadata: version: 1.0.0 category: domains tags: [quality, review, architecture, design]

Quality Attributes Skill

Eight quality attributes for evaluating software design and implementation.

The 8 Quality Attributes

1. Supportability

Definition: How easy is it to diagnose and fix issues?

Key aspects:

  • Adequate logging at critical paths
  • Clear, actionable error messages
  • Debugging information available
  • Operational troubleshooting considered

2. Extendability

Definition: How easy is it to add new features?

Key aspects:

  • Modular design
  • Appropriate abstractions
  • Extension points identified
  • Future requirements anticipated

3. Maintainability

Definition: How easy is it to understand and modify the code?

Key aspects:

  • Code clarity and naming
  • Minimal complexity
  • Follows project conventions
  • Self-documenting approach

4. Testability

Definition: How easy is it to test the system?

Key aspects:

  • Unit test strategy defined; components testable in isolation
  • Integration tests written (not just planned) for component boundaries
  • Integration tests tagged to run separately from unit tests
  • Edge cases covered; no flaky tests
  • When a coverage target can be extracted from repo policy, CI, or review context, expect >= 80% coverage unless the project defines a stricter rule

5. Performance

Definition: Does the system meet performance requirements?

Key aspects:

  • No obvious bottlenecks
  • Resource usage reasonable
  • Algorithms appropriate for scale
  • Profiling and optimization strategy

6. Safety

Definition: Does the system handle errors and edge cases gracefully?

Key aspects:

  • Comprehensive error handling
  • Edge cases handled
  • Resource management (RAII, defer, etc.)
  • Thread safety (if applicable)
  • No undefined behavior

7. Security

Definition: Is the system protected against vulnerabilities?

Key aspects:

  • Input validation and sanitization
  • No injection vulnerabilities (SQL, command, XSS)
  • Secrets not hardcoded
  • Authentication/authorization appropriate
  • Dependencies from trusted sources

8. Observability

Definition: Can we understand system behavior in production?

Key aspects:

  • Key operations logged
  • Metrics available
  • Traceable across boundaries
  • Performance can be monitored

Usage

Design Review

Evaluate proposed design against all 8 attributes before implementation.

Code Review

Verify implementation meets quality standards for all 8 attributes after implementation. After the 8-attribute scan, also run both mandatory enumeration passes (always required, not part of the attribute scan):

  • Test Quality Pass — per-test enumeration: assertion specificity, name/assertion alignment, falsifiability, negative coverage
  • Cross-Site Consistency Pass — audit all invocation sites for every changed contract: function signatures, build commands, interfaces, config values

See references/review-checklist.md for the full procedure for both passes.

References (checklist lookup — explicitly read when doing reviews)

  • references/review-checklist.md — full design and code review checklists (pass this path to reviewer agent)
Install via CLI
npx skills add https://github.com/astavonin/genai-automations --skill quality-attributes
Repository Details
star Stars 0
call_split Forks 1
navigation Branch main
article Path SKILL.md
More from Creator