В настоящее время компьютерные программы активно используются в коммерческих и государственных структурах, а также в повседневной жизни. На критических направлениях деятельности в отношении программ предъявляются повышенные требования к соблюдению различных аспектов их безопасности: конфиденциальности, доступности, целостности, авторизации и т. п. Кроме того, безопасная программа должна иметь высокий уровень исполнения и по другим нефункциональным требованиям: корректности, надежности, удобству использования, гибкости, масштабируемости, открытости, безотказности, производительности и т. д.
Все эти показатели характеризуют уровень качества программы. Для проверки безопасности программ могут использоваться общие технологии тестирования и обеспечения качества, только применяемые специально для этих направлений (например, автоматизация попыток взлома, подбора ключа или пароля и т. п.).
< ... >