ВВЕДЕНИЕ

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

 

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

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

Ошибками в ПО являются всевозможные несоответствия между демонстрируемыми характеристиками его качества и предписанными требованиями и ожиданиями пользователей.

 

Выделяют следующие методы обеспечения качества ПО:

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

Тестирование бывает следующих видов:

1. Функциональное (оно же черного ящика) — это тестирование проверяет соответствие системы требованиям.

2. Структурное (оно же белого ящика) — тесты создаются на основе знаний о структуре самой системы и о том, как она работает.

3. Тестирование производительности. Измеряются показатели производительности системы и определяется, насколько они соответствуют требуемым.

4. Нагрузочное тестирование. Его целью является определение характеристик производительности системы при большой нагрузке на нее (большом количестве пользователей, интенсивном обмене данными с другими системами, большим объемом передавемых/используемых данных, и пр.)

5. Тестирование на отказ - имеет целью обнаружение ситуаций, в которых система выходит из строя, хотя не должна этого делать.

6. Тестирование удобства использования - проверяет насколько система удобна в использовании. Делается это на основе измерения времени, необходимого на обучение работе с системой, и производительности труда при работе с системой различных групп пользователей (уже знакомых с ней, незнакомых, опытных в данной предметной области, новичков и пр.).

7. Тестирование переносимости - проверяет работоспособность системы в разных окружениях.

8. Тестирование на соответствие - проверяет строгое соответствие требованиям любого рода, зафиксированным в достаточно строгом и полном виде (спецификациям, стандартам, корпоративной политике, и пр.).

9. Модульное, интеграционное и системное тестирование — различаются масштабом целей.
Модульное тестирование предназначено для проверки правильности работы отдельных модулей, вне зависимости от окружения, интеграционное — для проверки того, что модули корректно работают вместе (используют друг друга, не нарушая взаимных ограничений на такое использование), системное — для проверки правильности работы системы в целом и ее способности решать заявленные задачи в различных ситуациях.

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

Формальный анализ: формальное доказательство свойств ПО и формальный анализ эффективности алгоритмов.

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

Измерения: определение метрик ПО, проекта, документации, измерения производительности, измерения трудоемкости работы с ПО, скорости обучения.

Использование моделей различного родакаждый вид моделей моделирует ПО, соответствуя ему в каких-то свойствах и пренебрегая другими, не значимыми для целей моделирования.

 

 

Применяются:

1. Модели использования (какие операции использует пользователь, насколько часто, как долго он работает с отдельными экранами и диалогами) для анализа удобства использования ПО.

2. Модели использования и надежности для анализа надежности и производительности.

3. Модели функционирования для анализа свойств и их проверки на моделях.
Обычно к проверке свойств на моделях (model checking) прибегают для того, чтобы проверить работоспособность каких-то отдельных архитектурных или алгоритмических решений, которые планируется использовать при построении сложных систем, их способность соответствовать требованиям.

 

Практика:

1. Проблемы качества ПП.

2. Процессы управления качеством программного обеспечения.

 

Конспект лекций «Гидравлические и пневматические системы автомобилей и гаражного оборудования» ОПД.Ф.2.5.01 предназначен для студентов специальности 190601 «Автомобили и автомобильное хозяйство».

Курс «Гидравлические и пневматические системы автомобилей и гаражного оборудования» относится к числу обще-профессиональных дисциплин в подготовке инженера-автомеханика. Он включает в себя теоретические основы проектирования и расчета гидравлических объемных приводов применительно к автомобильной промышленности.