Re[5]: Двадцать основных принципов, без которых нельзя обойтись при создании над
От: Gaperton http://gaperton.livejournal.com
Дата: 20.06.13 14:38
Оценка:
Здравствуйте, t_o_l, Вы писали:

__>Как говорилось в пункте 3, надежность ПО нужно доказать, иначе веры в вероятность декларируемой отказоустойчивости — нет. Для доказательства нужно использовать какой-то подход. В гражданской авиации — нужно доказать что ПО соответствует всем требованиям стандарта DO-178B/C в зависимости от выбранного уровня критичности этого ПО. Уровень критичности определяется в зависимости от того какой вред может причинить ПО человеку, в диапазоне от смертельного и кончая никаким. А что используют "телефонисты" для такого доказательства?


Ничего. ПО телефонных свитчей не может причинить вреда человеку. Что не мешает ему быть достаточно надежным by design и по практике эксплуатации — пять девяток аптайма все приличные продукты на практике обеспечивают. Некоторые, как например, AXD301, фактически обеспечивают девять девяток.

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

У слова "надежность" очень много граней, это не бинарный признак. Есть разные подходы к обеспечению надежности, и все они стоят денег.

Например, при разработке системы автоматической посадки Бурана отдельная команда занималась восстановлением исходников на Фортране из машинного кода, и сравнением исходников с оригиналом. В результате было найдено две ошибки в компиляторе, из-за которых Буран непременно упал бы. Я лично знаком с руководителем этой команды.

Дает ли этот опыт нам что-то полезное? Нет. Надо быть сумасшедшим, чтобы использовать эту практику в коммерческой разработке.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.