Управление, тестирование программного обеспечения

Управление конфигурацией программного обеспечения

Управление конфигурацией ПО заключается в поддержке целостности программного продукта и контроле версий. Оно состоит из следующих ключевых действий:

  • определение элементов конфигурации (документация, исходные коды программ, аналитические и дизайнерские модели системы). Это действие выполняется на фазе уточнения проекта в процессе Novosoft SEP;
  • обеспечение контроля изменений;
  • использование системы контроля версий;
  • составление отчетов о статусе изменений системы;
  • предоставление конфигурации ПО для аудита и рецензирования.

Использование собственной разработки - базы Control Management- позволяет собирать требования по изменениям и модификациям продукта, оценивать их, планировать реализацию требований и контролировать качество их реализации.

Управление качеством продуктов

Для обеспечения высокого качества разрабатываемого продукта на протяжении жизненного цикла проекта осуществляется периодическое рецензирование документов, моделей и исходного кода.

Управление качеством заключается в следующих основных действиях:

  • подготовка плана управления качеством;
  • рецензирование документов;
  • рецензирование критических фрагментов кода системы;
  • рецензирование документации для пользователей и разработчиков;
  • принятие проекта.

Тестирование

Методика тестирования

Процесс тестирования в группе компаний "Новософт" выполняется в соответствии с принципами Rational Unified Process (RUP). Задача тестирования ПО возложена на специальную группу, состоящую из тест-дизайнеров и тестеров. Процесс подготовки и тестирования начинается на самых ранних стадиях, поэтому и в начальной фазе, и в фазе уточнения в проект добавляются лица из этой группы.

Основные задачи, выполняемые при тестировании, заключаются в следующем:

  • подготовка тест-плана и определение стратегии тестирования;
  • оценка риска, определение критических областей при тестировании;
  • создание процедур тестирования и критериев оценки;
  • оценка результатов тестирования;
  • оценка полноты тестирования;
  • принятие решения о соответствии продукта его спецификации.

На начальном этапе и в фазе уточнения тестирование заключается в анализе и проверке соответствия спецификаций требованиям проекта.

Несколько иная методика используется в фазе конструирования. На этой фазе используется техника регрессивного тестирования, заключающаяся в повторении пакета тестов с предыдущей итерации конструирования с целью проверки их функционирования в новой версии продукта. На каждой новой итерации в пакет тестов добавляются новые процедуры, обеспечивающие проверку новой функциональности. По возможности используется технология автоматизации тестирования.

В стадии внедрения тестирование также применяется после добавлений или модификаций продукта по требованию заказчика или из-за ошибок, выявленных заказчиком при бета-тестировании. Уже накопленные тесты используются при этом в качестве основы для процедур тестирования. Могут также вноситься изменения в тест-план и создаваться новые процедуры тестирования, чтобы проверить реализованные дополнения или модификации.

Тестирование соответствия

Тестирование соответствия выполняется для оценки работоспособности и эффективности продукта. Тесты на соответствие базируются на демонстрационных тестах, предоставляемых заказчику. В общем случае демонстрационные тесты есть подмножество тестов системы, использовавшихся при разработке продукта, которые модифицированы с целью максимальной наглядности и прозрачности результатов.
Тесты на соответствие проводятся на основе копий реальных данных.

Тесты на соответствие обычно проходят следующие фазы:

  • проработка программы тестирования и координация ее с заказчиком;
  • создание демонстрационных тестов;
  • установка продукта на тестовой платформе заказчика;
  • исполнение тестов и оценка результатов;
  • создание журналов (логов) тестирования.

Решение о соответствии или несоответствии продукта спецификации принимается на основе журналов тестирования. По результатам демонстрационных тестов оцениваются следующие характеристики ПО:

  • корректность функционирования бизнес-циклов;
  • производительность системы;
  • отказоустойчивость длительных операций;
  • поведение системы в стрессовых ситуациях, таких как потеря связи, прерывание незавершенных транзакций, отказы оборудования и др.;
  • корректность функционирования при воздействии некорректных или испорченных данных;
  • целостность системы хранения данных.