Спецификация критических систем
Цели Цель настоящей главы – описать функциональные и нефункциональные требования, определяющие надежность программных систем. Прочитав эту главу, вы должны: q познакомиться с количественными показателями безотказности и понять, как они используются для определения требований безотказности; q понять, как требования безопасности для критических систем можно получить из анализа возможных опасностей и рисков; q понять сходство процессов для определения системных требований безопасности и защищенности.
В главах 5-9 обсуждались системные требования и методы их разработки. В этой главе рассматриваются некоторые специальные вопросы спецификации критических систем. Поскольку цена отказа программных систем, особенно критических, как правило, очень высока, необходимо гарантировать высокое качество разработки спецификации критических систем и точность отражения в ней реальных потребностей пользователей. Условия надежности критических систем порождают как функциональные, так и нефункциональные требования.
1. Функциональные требования к системе подразумевают возможность обнаружения ошибок, восстановления системы и обеспечения ее защиты от сбоев. 2. Нефункциональные требования можно сформулировать как требования безотказности и работоспособности системы.
Анализируя безопасность и защищенность программного обеспечения, можно сформулировать еще один тип требований, которые трудно классифицировать как функциональные или нефункциональные. Их, возможно, лучше описать как требования "не делать". В противоположность обычным функциональным требованиям, которые определяют систему посредством требований "делать", условия "не делать" описывают систему "от противного", определяя ее поведение, которое недопустимо. Приведем примеры таких требований.
Система не должна позволять пользователю изменять файлы, которые он не создавал (защищенность системы). Система не должна разрешать режим обратного хода, если самолет находится в полете (безопасность системы). Система не должна одновременно выполнять более трех сигналов тревоги (безопасность системы).
Пользовательские требования к критическим системам всегда определяются с применением естественного языка и системных моделей. Как отмечалось в главе 9, при разработке критических систем будут рентабельны метод формальных спецификаций и соответствующий метод верификации систем [148, 348]. Формальные спецификации не только служат основой для верификации в процессе разработки и реализации программных систем. Они наиболее точно описывают системы ПО, что позволяет избежать неоднозначного толкования требований. Кроме того, для использования формальных спецификаций необходим детальный анализ требований, а это эффективный путь обнаружения и устранения проблем в системной спецификации.
Читайте также: CASE-технологии и CASE-системы Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|