незваный гость писал(а):
Поэтому я предлагаю: сформулируйте свою позитивную позицию, позволяющие обосновать принятие решений при разработке ПО (на всех этапах).
Если рассматривать в плане руководства/заказчика, то от них исходит требование, что ошибок по вине системы не должно быть вовсе. Такое может быть выполнено только при использовании стратегии обеспечения безопасности на безопасных элементах. Построение реле как безопасного элемента возможно, но вот любое микропроцессорное устройство при силовом воздействии может повести себя непредсказуемым образом.
Требования остаются, а времена меняются. На микроэлектронной базе уже нужно использовать другую стратегию. Построение систем на небезопасных элементах подразумевает, что безопасных систем не существует, возможно только снижение вероятности опасного отказа/сбоя к некому пределу. В этом случае используется принцип обнаружения опасного отказа и перехода в безопасное состояние до того, как появится второй отказ. При этом оценивается как быстро система может обнаружить опасный отказ и требуется доказательство (не обяз математическое) того, что система обнаружит любой опасный отказ.
Кроме того, на микроэлектронной базе появляется ПО. Но это не говорит о том, что нельзя строить ПО безопасным образом.
Например, согласно регламенту пуска ЭЦ(полностью релейной) станции требуется после монтажа проверить каждое действие, которое может сделать диспетчер. Т.е. задание маршрутов, проверка на враждебность маршрутов, замыкание секций, исскуственное размыкание и пр.. Релейные системы в отличие от ПО не зависают, могут быть построены так, что не обладать внутренней памятью (т.е. действие не зависит от предыдущих манипуляций, а только от состояний) и пр.. ПО логики станции можно построить аналогичным образом, исключив в нем зависания и поставить зависимости только от текущих состояний {это пример решений проблем}.
Исполнительный уровень работает уже другим образом. В конечном итоге состояния, влияющие на безопасность, определяют реле 1-го класса (т.к. никто не может гарантировать, что например электромагнитная помеха не изменит состояние ячейки памяти). Связь между логикой ПО и исполнительной группы - это отдельная категория, там свои особенности и принципы.
Если рассматривать сторонний софт, например ОС, на которой работает система, компилятор и пр.. то тут проблемы могут решаться с помощью диверситета и дублирования. Например, один и тот же софт работает на разных машинах под разными ОС, собранный на разных компиляторах.
Соответственно, при предоставлении конечного продукта заказчику предъявляются те решения и способы, которые были использованы. При чем информация предоставляется независимому сертификационному центру, эксперты которого делают заключение, на основании которого уже и принимается решение.
Решений проектирования много, и в деталях я все рассказать не могу т.к. у меня своя область.
незваный гость писал(а):
Я с некоторым трудом нашёл книгу Альтшуллера, но, просмотрев несколько страниц, не понял, как она связана со статьей Крайтона. Скажем, с основным тезисом: два числа и формула — это ещё не наука. Даже если Гору дают Нобелевскую премию, что вызывает здоровый смех у образованной публики, и соответствующее отношение к Нобелевскому комитету. Вы не дадите ссылочки подробнее что искать у Альтшуллера? Скажем, главы, или страницы?
По моему мнению (так читать до след. цитаты), статья Крайтона не об одной формуле как науке.
Статья о том, что существует "согласованная наука", так сказать, некое "научное мнение", которое не дает пути развитию в ряде случаев.И эта согласованная наука выдает описанные в статье результаты.
У Альтшуллера данная "согласованная наука" представлена как "внешние обстоятельства". Т.е. любая инновация, изобретение, открытие - не выживают в схватке с обстоятельствами в случае, если оно не поддерживается, не развивается и не пробивается человеком/организацией. Все примеры, приведенные Крайтоном попадают под это определение.
Он говорит, что:
Цитата:
В заключение я хотел бы отметить, в какого рода ситуациях требуется консенсус. Консенсус нужен только там, где не хватает научных аргументов.
Обращаю внимание, что 2 вопроса(2 формулы), которые были рассмотрены, на сейчас не формализованы и фактически безрезультатны. Т.е. проверить формулы мы никак не можем. Можно как-то обосновать, но проверить (только практика может что-то рассудить) никто не может. Поэтому эти 2 формулы на сейчас - всё что есть. И здесь нужен консенсус, т.к. пока что аргументов не хватает. С одной стороны это ненаучно (нет проверки практикой), с другой - научно, т.к. это всё что есть по рассматриваемому вопросу и по этим формулам можно сказать, что всё именно так по сегодняшним представлениям науки.
Крайтон говорит что нужен консенсус. Т.е. фактически нужно что-то, чтобы определяло, нужен консенсус или нет. Но вся история говорит о том, что его нет. Внешние обстоятельства это не только группа авторитетных ученых, это вся система в целом. Если система пришла к какому-то состоянию, то её просто так из него не выведешь. И Альтшуллер показывает, как нужно вести себя новаторам (белым), и как вести себя черным (представителям внешних обстоятельств) чтобы что-то получилось.
незваный гость писал(а):
Тут играют роль именно экономические факторы — то, что является единственно приемлемым решением для АЭС (или жд) может быть неприемлемо по стоимости для управления больницей.
Играют роль любые факторы. Может просто не хватить времени например.
Вы оказались на необитаемом острове с ноутбуком. Каковы факторы? Деньги? Нет. Заряд батарей, ваше здоровье и запас припасов - вот ваши главные факторы.
незваный гость писал(а):
Готова ли Ваша компания заплатить, например, за переписывание всего кода на другом языке?
Не понимаю сути вопроса. Потому что не указано: зачем? Зачем переписывать код?
К слову говоря, у нас с моим участием идет сейчас сборка кода 2х разных модулей (1 на другой платформе, 2й на другом железе). Потому что в одном случае нужен диверситет, в другом требуется более высокая эксплуатационная готовность. Принципы построения остаются, есть мысли по улучшению, но не с коренной ломкой.
незваный гость писал(а):
Поэтому подобные системы очень консервативны. Меня не удивляют ничуть слова bsivko, что реле были, есть, и будут. Действительно, системы на базе электроники должны предложить не просто столь же надежное решение, но и в чём-то принципиально лучшее.
Они уже дают. Это меньшие энергозатраты и материалоемкость, большая функциональность. Но микроэлектроника не в состоянии обеспечить безопасность на исполнительном уровне, а на уровне логики сейчас в мире с десяток фирм позволяют выполнять безопасные ж.д. системы. Фактически автоматизирована только наборная группа, т.е. интерфейс пользователя.