Software Quality Assurance (SQA) — это комплекс мероприятий по обеспечению качества в процессах разработки программного обеспечения. Это гарантирует, что разработанное программное обеспечение соответствует и соответствует определенным или стандартизированным спецификациям качества. SQA — это непрерывный процесс в рамках жизненного цикла разработки программного обеспечения (SDLC), который регулярно проверяет разработанное программное обеспечение, чтобы убедиться, что оно соответствует требуемым показателям качества.
Практики SQA применяются в большинстве типов разработки программного обеспечения независимо от используемой модели разработки программного обеспечения. SQA включает и внедряет методологии тестирования программного обеспечения для тестирования программного обеспечения. Вместо проверки качества после завершения, SQA обрабатывает тест на качество на каждом этапе разработки, пока программное обеспечение не будет завершено. С SQA процесс разработки программного обеспечения переходит в следующую фазу только тогда, когда текущая / предыдущая фаза соответствует требуемым стандартам качества. SQA обычно работает над одним или несколькими отраслевыми стандартами, которые помогают в разработке рекомендаций по качеству программного обеспечения и стратегий реализации.
Включает в себя следующие виды деятельности —
- Определение и реализация процесса
- Аудиторская проверка
- Повышение квалификации
Процессы могут быть —
- Методология разработки программного обеспечения
- Управление проектом
- Управление конфигурацией
- Разработка требований / Управление
- Предварительный расчет
- Разработка программного обеспечения
- Тестирование и др.
После того, как процессы определены и внедрены, Контроль качества выполняет следующие обязанности:
- Выявить слабые места в процессах
- Исправьте эти недостатки, чтобы постоянно улучшать процесс
Компоненты системы SQA
Система SQA всегда сочетает в себе широкий спектр компонентов SQA. Эти компоненты могут быть классифицированы на следующие шесть классов —
Предпроектные компоненты
Это гарантирует, что обязательства по проекту были четко определены с учетом необходимых ресурсов, графика и бюджета; и планы развития и качества были правильно определены.
Компоненты оценки жизненного цикла проекта
Жизненный цикл проекта состоит из двух этапов: этап жизненного цикла разработки и этап эксплуатации-обслуживания.
Компоненты этапа жизненного цикла разработки выявляют ошибки проектирования и программирования. Его компоненты подразделяются на следующие подклассы: обзоры, мнения экспертов и тестирование программного обеспечения.
Компоненты SQA, используемые на этапе эксплуатации и обслуживания, включают в себя специализированные компоненты обслуживания, а также компоненты жизненного цикла разработки, которые применяются главным образом для функциональных возможностей для улучшения задач обслуживания.
Компоненты инфраструктуры предотвращения и улучшения ошибок
Основная цель этих компонентов, которая применяется во всей организации, состоит в том, чтобы устранить или, по крайней мере, уменьшить количество ошибок, основываясь на накопленном опыте организации по SQA.
Компоненты управления качеством программного обеспечения
Этот класс компонентов имеет дело с несколькими целями, такими как контроль за разработкой и обслуживанием, а также внедрение ранних действий по поддержке управления, которые в основном предотвращают или сводят к минимуму сбои графика и бюджета и их результаты.
Компоненты стандартизации, сертификации и оценки системы SQA
Эти компоненты реализуют международные профессиональные и управленческие стандарты внутри организации. Основными целями этого класса являются использование международных профессиональных знаний, улучшение координации систем качества организации с другими организациями, а также оценка достижений систем качества в соответствии с общей шкалой. Различные стандарты можно разделить на две основные группы: стандарты управления качеством и стандарты процессов проектов.
Организация для SQA — человеческие компоненты
Организационная база SQA включает менеджеров, персонал тестирования, подразделение SQA и лиц, заинтересованных в качестве программного обеспечения, таких как доверенные лица SQA, члены комитета SQA и участники форума SQA. Их основными целями являются инициирование и поддержка внедрения компонентов SQA, выявление отклонений от процедур и методологии SQA и предложение улучшений.
Предпроектные компоненты качества программного обеспечения
Эти компоненты помогают улучшить предварительные шаги, предпринятые перед началом проекта. Включает в себя —
- Обзор контракта
- Планы развития и качества
Обзор контракта
Как правило, программное обеспечение разрабатывается для договора, заключенного с заказчиком, или для внутреннего заказа на разработку встроенного программного обеспечения для аппаратного продукта. Во всех этих случаях отдел разработки придерживается согласованной функциональной спецификации, бюджета и графика. Следовательно, действия по рассмотрению контракта должны включать детальное изучение проекта проектного предложения и проектов контракта.
В частности, действия по рассмотрению контракта включают в себя —
-
Разъяснение требований заказчика
-
Обзор графика проекта и сметных потребностей
-
Оценка способности профессионального персонала выполнять предложенный проект
-
Оценка способности клиента выполнять свои обязательства
-
Оценка рисков развития
Разъяснение требований заказчика
Обзор графика проекта и сметных потребностей
Оценка способности профессионального персонала выполнять предложенный проект
Оценка способности клиента выполнять свои обязательства
Оценка рисков развития
Планы развития и качества
После подписания контракта на разработку программного обеспечения с организацией или внутренним отделом той же организации составляется план разработки проекта и его комплексные мероприятия по обеспечению качества. Эти планы включают дополнительную информацию и необходимые изменения на основе предыдущих планов, которые послужили основой для текущего предложения и контракта.
В большинстве случаев между подачей тендера и подписанием контракта проходит несколько месяцев. В течение этого периода ресурсы, такие как доступность персонала, профессиональные возможности, могут измениться. Затем планы пересматриваются с учетом изменений, произошедших за это время.
Основные вопросы, рассматриваемые в плане развития проекта:
- Расписание
- Требуемые людские и аппаратные ресурсы
- Оценка рисков
- Организационные вопросы: члены команды, субподрядчики и партнерства
- Методология проекта, инструменты разработки и др.
- Планы повторного использования программного обеспечения
Основные вопросы, рассматриваемые в плане качества проекта:
Цели в области качества, выраженные в соответствующих измеримых терминах
Критерии начала и окончания каждого этапа проекта
Списки обзоров, тестов и других запланированных действий по проверке и валидации