Ответ
QA (Quality Assurance) — это систематический процесс управления качеством разработки программного обеспечения, направленный на предотвращение дефектов через улучшение процессов, а не только на их поиск.
Ключевые отличия от QC (контроля качества):
- QA (Assurance) — проактивный, процессо-ориентированный. Фокус на «строим ли мы продукт правильно?» (правильные процессы, стандарты, методологии).
- QC (Control) — реактивный, продукт-ориентированный. Фокус на «построили ли мы продукт правильно?» (тестирование, инспекции готового продукта).
Основные активности QA:
- Управление процессами: Внедрение и соблюдение стандартов (например, ISO, CMMI).
- Аудит и ревью: Проверка процессов разработки, требований, кода.
- Тест-менеджмент: Планирование, оценка рисков, метрики качества.
- Профилактика: Обучение команды, анализ причин дефектов (RCA), улучшение циклов разработки.
Пример: Внедрение практики Code Review — это активность QA, так как она предотвращает появление багов на ранней стадии, улучшая процесс разработки.