A критическая система является система, которая должна быть высоконадежной и сохранять эту надежность по мере развития без чрезмерных затрат.
Существует четыре типа критических систем: критические с точки зрения безопасности, критически важная и.
Для таких систем при разработке должны использоваться надежные методы и технологии. Следовательно, критические системы обычно разрабатываются с использованием хорошо проверенных методов, а не более новых методов, которые не были предметом обширного практического опыта. Разработчики критических систем по своей природе консервативны, предпочитая использовать старые методы, чьи сильные и слабые стороны понятны, а не новые методы, которые могут показаться лучше, но чьи долгосрочные проблемы неизвестны.
Дорогие методы разработки программного обеспечения. которые не рентабельны для некритических систем, иногда могут использоваться для разработки критических систем. Например, формальные математические методы разработки программного обеспечения успешно используются для систем, критичных к безопасности. Одна из причин, по которой используются эти формальные методы, заключается в том, что они помогают сократить объем необходимого тестирования. Для критически важных систем затраты на верификацию и валидацию обычно очень высоки - более 50% от общих затрат на разработку системы.
Критическая система выделяется последствиями, связанными с отказом системы или функции. Аналогичным образом, критические системы дополнительно различаются на отказоустойчивые и отказоустойчивые системы в соответствии с допуском, который они должны проявлять к отказам:
Критически важные для безопасности системы имеют дело со сценариями, которые могут привести к гибели людей, серьезным травмам или ущербу к окружающей среде. Примерами систем, критически важных для безопасности, являются система управления химическим производством, самолет, контроллер беспилотной системы метро, контроллер атомной станции и т. Д.
Критически важные системы созданы, чтобы избежать невозможности завершить общую систему, цели проекта или одну из целей, для которых система была разработана. Примерами критически важных систем являются навигационная система для космического корабля, программное обеспечение, управляющее системой обработки багажа аэропорта и т. Д.
Критически важными для бизнеса системами являются запрограммированы на избежание значительных материальных или нематериальных экономических затрат; например, потеря бизнеса или ущерб репутации. Часто это происходит из-за прерывания обслуживания, вызванного непригодностью системы. Примерами критически важных для бизнеса систем являются система учета клиентов в банке, система биржевой торговли, ERP-система компании, поисковая система в Интернете и т. Д.
Критически важные системы безопасности имеют дело с потерей конфиденциальных данных в результате кражи или случайной потери.