serge_gorshkov


Сергей Горшков - о бизнесе в сфере ИТ

о семантической интеграции, программировании, управлении...


Previous Entry Share Next Entry
Нужны ли стандарты ИТ-отрасли?
serge_gorshkov
На прошлой неделе выступал на конференции «Нефтегазстандарт-2013» с рассказом о деятельности нашей рабочей группы МРГ НСИ-4Д, которая занимается созданием каталога справочных данных для промышленности. Как всегда, обсуждение доклада, и то, что говорили другие докладчики, навело меня на обобщающие размышления.

Например, не так просто ответить на вопрос, способствуют ли стандарты (ISO, ГОСТ и т.п.) прогрессу, или препятствуют ему. С одной стороны, прямое назначение стандартов – описывать лучшие практики, и претворять их в жизнь даже в тех случаях, когда кто-то не особенно хочет их применять. С другой стороны, на практике:

А) Процесс разработки и утверждения стандартов очень долог; меньше чем за три года принять стандарт не получается. В современном мире за этот период многие решения успевают устареть, и стандартизировать их просто нет смысла. Срок возможного полезного использования уже принятого стандарта также невелик. Фактически, необходим механизм гораздо более быстрого утверждения стандартов, и постоянного внесения изменений в них (что, по сегодняшним регламентам, немногим проще, чем принятие нового стандарта).

Б) По факту, ускорить процесс принятия стандартов вряд ли возможно (но можно, как мне с моим поверхностным взглядом кажется, постараться перестроить процесс внесения изменений в них). Даже при текущем, не очень быстром, темпе работ стандартизаторов в нормативные документы попадает много всякой ерунды, вызванной недостатком времени и/или ресурсов. Один из докладчиков Нефтегазстандарта привел пример: в техническом регламенте Таможенного Союза, описывающем требования к оборудованию, работающему под давлением, сказано, что устройство должно обеспечивать безопасность людей, находящихся внутри сосуда с высоким давлением.

В) Проблема времени усугубляется тем, что на принятии стандарта процесс не заканчивается: на него должны ссылаться нормативные документы, должны быть предусмотрены механизмы контроля, и т.д. Все это предстоит разрабатывать или модифицировать после введения стандарта.

Получается, что по крайней мере в сфере ИТ стандарты обречены быть чем-то вроде древних скрижалей, может быть и глаголющих истину, но далекую от текущей повестки дня?

Хорошим подтверждением этому предположению может стать судьба стандарта ISO 15926, описывающего методы обмена информацией в промышленности. История стандарта насчитывает около 15 лет; за это время успела измениться и сфера его предполагаемого применения, и технологический базис. Особых изменений не претерпел описанный в нем способ информационного моделирования, зато этот способ и по сей день большинством специалистов оценивается как слишком сложный. Дополнение стандарта продолжается, и до вопросов описания его практического использования (технологического воплощения) авторы дошли,  фактически, только сейчас. В итоге – потрачено 15 лет работы умных и правильных людей, а практические результаты и влияние на индустрию очень скромны.

В российских условиях к «тормозящим» факторам стандартизации добавляется еще и кадровая проблема. В общем, стандартизация неплоха в тех случаях, когда речь идет о чем-нибудь почти вечном, фундаментальном, и в то же время простом – например, о стандартизации типоразмеров труб. В тех же случаях, когда говорится о лучших практиках, стандартизировать в таких условиях их вряд ли удастся.

Разрыв между реальной жизнью и стандартами возрастает, и нет никаких надежд на то, что он начнет сокращаться. Пока стандартизаторы описывают один фрагмент реальности – возникает два новых.

Но существует еще одно, частное противоречие. Упомянутый стандарт ISO 15926 представляет собой описание способа обмена информацией. Очевидно, что этот способ должен быть общепринятым, иначе в чем его смысл? Здесь статус стандарта становится решающим преимуществом. Но для того, чтобы стать общепринятым, он должен быть а) простым, б) как можно менее зависимым от текущих технологий передачи информации. В качестве грубого примера: технология передачи факса, выдержавшая несколько десятилетий активной эксплуатации, работала поверх аналоговых телефонных линий, цифровых, затем IP-сетей, сохраняя обратную совместимость. Также и стандарт обмена информацией не должен  быть жестко завязан на XML, технологиях Semantic Web, или любых других формах представления данных. Стремление охватить весь процесс обмена, от моделирования информационной структуры, до справочных данных и воплощения в способах передачи информации, препятствует долгой жизни решения. В результате решение используется фрагментарно: с одной стороны, предлагаемая идеология моделирования безусловно хороша, и за 15 лет ничего более продвинутого не появилось; с другой, формирование каталогов справочных данных идет несравненно медленнее, чем требуется для действительно широкого применения технологии; с третьей, техническое воплощение при помощи технологий Semantic Web слишком ново для индустриальных применений (этот технологический стек еще не достиг нужной степени зрелости). При этом, справочные данные хотя бы в какой-то степени используются в индустрии, тогда как реализация схемы информационного обмена в полном соответствии со всеми частями стандарта остается, насколько можно судить, на стадии лабораторных экспериментов и пилотных проектов. Потенциал технологии в целом не используется и на доли процента. Одни части стандарта перезревают, другие – недозрели.

На мой взгляд, этот стандарт следовало бы разбить на несколько:
а) способ информационного моделирования, не зависящий от технологий реализации, и предназначенный для широкого круга применений (не только обмена информацией);
б) принципы построения каталогов справочных данных, которые могут использоваться как в моделях, построенных в соответствии с принципами пункта «а», так и без оных (на практике так и получилось).
в) техническое воплощение обмена информацией при помощи указанных принципов моделирования и каталогов справочных данных должно представлять собой не стандарт ISO, а набор рекомендаций, библиотеку лучших практик, спецификацию на конкретные прикладные решения. Техническое воплощение должно допускать много вариантов реализации, которые могут достаточно быстро меняться по мере развития технологий. Используем еще одну аналогию: в ходе развития естественных языков принципиально невозможно было задать одновременно стандарты произношения, письменной грамматики, азбуку Морзе, и кодовые таблицы для представления письменности в компьютере. Эти способы воплощения речи возникают последовательно, а развиваются параллельно, в связи с эволюцией как самого языка, так и технических средств его выражения. ISO 15926 является, по сути, «языком», то есть образной системой, но стремится сразу зафиксировать стандарты произношения и письма.

ISO 15926 должен был бы стать lingua franca, а по факту декларирует стремление стать lingua generalis (начиная со своей «абсолютной» структуры из 201 основного типа). В таком амплуа он оказывается слишком далеким от конкретных людей и предприятий с их потребностями и возможностями, страдает номинализмом и формализмом, и должен быть расстрелян и становится уязвимым для критики с философской точки зрения. Если же рассматривать только практический аспект, очевидно, что нельзя заставить всех людей разговаривать на литературной латыни, сколько ее ни учи в гимназиях, а вот на каком-нибудь пиджине – можно. Управлять развитием такого языка можно только в ограниченных масштабах, и точно не в рамках стандарта, т.к. став «народным», он начнет эволюционировать по собственным законам, и с гораздо большей скоростью: лингвистам останется только фиксировать уже происшедшие изменения, как это и наблюдается в современных живых языках.

  • 1
Надо стандарты на музыкальные произведения, живопись и кинематограф ввести, так проще с заказчиком разговаривать:)))

Отличная мысль!
Я в свое время много занимался сдачей дизайна заказчикам, все эти бесконечные "давайте поиграем шрифтами"... Стандарты бы очень помогли :)

Тут еще в принципе не решили вопрос про то, является ли онтология субъективным или объективным явлением. Например, лингвисты строят свои онтологии (чем SUMO не стандарт?), бизнесы - свои (сильно проработанные между прочим, с описанием процессов во времени), технари исо придумали...

Я так пока думаю, что это из области субъктивного. Но субъективного, которое постоянно перестраивается. Потому что есть такая задача - оптимизация. Ее вполне можно применить к онтологии, причем, делать это постоянно.

Например, зачем вводить многоэтажную цепочку сложносоставных терминов из исо, если достаточно тупо одну связь сделать? Чисто чтобы стать модным и в дальнейшем интегрироваться с не знаю кем? Вот как появится задача интеграции - будем думать и переоптимизировать.

Разрушить мои представления может только появление действительно оптимального стандарта, который бы был к тому же прост. Но это пока фантастика - как только начинается борьба за универсальность, так сразу появляются грабли, которые всё портят.

Я однозначно убежден, что любая онтология - субъективна, а также зависит от контекста ее создания и использования. И контекст, и субъекты постоянно изменяются.
Номинализм не пройдет, это средневековье.

Насчет универсальности - да, совершенно верно. Всегда есть баланс между удобством и универсальностью, улучшение одного ухудшает другое.

Так что инструменты мэппинга онтологий - необходимы, и по большому счету их еще ждет серьезное развитие. А универсальных онтологий (живых), я уверен, не будет.

Что брать за основу

Если используется научная картина мира, то она не может быть субъективной по определению (например, существуют процессы, существуют результаты процессов). Религиозные, философские могут (бог - это Демиург; бог - это природа; бог - это всё вокруг...).

Re: Что брать за основу

Научная картина мира ничуть не менее субъективна, чем религиозная или философская.

В старые времена научная картина мира утверждала, что Солнце вращается вокруг Земли. Это были полноценные научные утверждения, подкрепленные теорией, расчетами (всяческие эпициклы), и практикой (наблюдениями восхода/захода Солнца, и даже лунные затмения можно предсказывать в рамках такой теории).

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

Точно также субъективно восприятие любого процесса. Его описание очень сильно зависит от точки зрения, и задача состоит всего лишь в том, чтобы описать его так, как это будет удобно пользователю описания, и полезно на практике.

Re: Что брать за основу

Это в теории картина мира может быть какой угодно объективной. Только эта объективность не нужна и вредна на практике.

Например, даже в науке, объективно, что теория относительности полнее и точнее, но на практике при малых скоростях используется механика Ньютона. Так же и применительно к онтологиям как моделям мира.

Сергей, жаль, что Вы не обратили внимание на то, каким образом ISO 15926 решает проблемы динамичности и скорости утверждения.

Хорошая новость состоит в том, что стандарт давно уже разбит на части, позволяющие использовать его в соответствии с Вашими пунктами а, б и в, а также и в рамках других подходов.

Виктор, ну конечно, я видел эти части :)
Но раз все части относятся к одному стандарту, то, наверное, в идеальном случае их надо использовать вместе?

А вот насчет динамичности скорости утверждения - буду рад, если поясните.

Вовсе не надо вместе. Соответствие стандарту разбито на 8 кажется аспектов по три-четыре уровня в каждом.

Использование части 4 или RDL возможно в рамках любой другой семантической парадигмы моделирования (не по части 2, как Вы и делаете). А можно и в несемантическом моделировании использовать RDL, как словарь.

Часть 7 можно не использовать, а можно использовать, но в иных компьютерных форматах, не обязательно части 8.

И т.д.

Сам механизм внешнего RDL, который поддерживается сторонней организацией, и есть способ динамически пополнять контент вне процедуры ISO. Дополнительно к этому - возможность вести свой RDL, где вы вообще руководствуетесь своими бизнес-потребностями и ограничены только своими процессами.

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

Edited at 2013-10-24 02:13 pm (UTC)

> Использование части 4 или RDL возможно в рамках любой другой семантической парадигмы моделирования (не по части 2, как Вы и делаете). А можно и в несемантическом моделировании использовать RDL, как словарь.

Если тут вы говорите про прототип RuJORD'а, то он как раз классифицирован по части 2, и отношения между элементами создаются в соответствии с ней.
А вот в практическом внедрении - да, там стандарт не использовали.

Что касается каскадных RDL - да, это механизм "передачи полномочий", но все же очень частичный. Как минимум, он ограничен тем, что мы можем создавать в "частных" RDL элементы, только классифицируя их по 201 типу (хотя к этой модели есть вопросы, все ж таки она составлена достаточно произвольно, и заведомо не может быть исчерпывающей). Задавая отношения между элементами мы также можем только в соответствии с заданным набором (специализация, классификация и т.п.).
Понятно, что раз мы говорим о стандартном способе представления информации для обмена ею, такие вещи и должны быть стандартизованы, иначе смысла никакого не будет. Вопрос в том, что добавить 202-й тип, если его необходимость будет признана экспертами - это сложная бюрократическая процедура, на которую уйдет не один год.

1. Если стандарт надо менять через три года, это не стандарт. Это фигня. (Да, я видел полно такого. Причём, правило всегда подтверждалось)

2. Стандарты созданы для завоевания позиций. В первую очередь стандартизующие организации проталкивают свои процессы и манеру работы.

3. Стандартам никто всё равно не следует. Хотя бы потому, что девяносто девять из ста читают не сам текст стандарта, а мурзилку про него. Насчёт того, что тексты часто совершенно не читаемые пункт делать не будем, но стандартов написанных человеческим языком видел очень мало. (Имеется ввиду русский и немецкий. Что читал на русском, было давно и не правда)

4. "Влияние на индустрию" проявляется в основном в том, что в фирмах появляются отделы паразитов. В лучшем случае подкрашивать происходящее внутри под требования стандартов берутся практиканты и вчерашние студенты. В худшем, фирма воспринимает это всерьёз и заводит королевство болтунов, которые просто херят нормальные процессы и не дают специалистам выполнять прямые обязанности. (Примеров дофига, вплость до банкротсва фирмы)

5. "Лучшие практики" делать стандартом всё равно, что устраивать конкурс "кто лучше наврёт". Презентации о том, как чудные методики принесли фирме процветание и просветление на переднем крае, людьми которые на самом деле работают с этим, вызывают только здоровый смех.

6. Больше всего стандарты любят производители тулов. Потому что это позволяет им втюхивать клиентам всякую фигню. Причём, у них есть деньги, чтобы двигать стандарты в индустрию, и продвижение стандартов в индустрию даёт им деньги. Короче, имеет место положительная обратная связь.

7. Вопрос не в том, с какой скоростью пополняются каталоги, а в том, на какой процент они пополняются ошибками, неточностями и откровенным бредом. Стоит помнить, что специалистов сажают на то, что не может сделать никто другой. Левые работы выполняют те, кто ни на что не способен и ни в чём не разбирается.

8. Стандарт пойдёт в массы только тогда, когда его сможет понять ребёнок пяти, ну хорошо, двенадцати лет. Причём, пойдёт только тогда, когда его поддержат тулы, с которыми этот самый ребёнок сможет работать. (И не надо думать, что инженеры с высшим образованием и дофига лет опыта работы чем-то круче. На то, чтобы думать у них нет времени. Да и желания тоже)

9. В любой фирме, в любом отделе, у любого работника уже есть процессы и "лучшие практики", причём "проверенные опытом". Они могут быть совершенно дикими, но введение стандарта их ломает. Чем больше изменений надо, тем больше будет сопротивление.

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

Спасибо!!! Более здравый взгляд на стандарты и представить себе сложно :)

Конечно, все так и есть. Мой пост начинается с подхода к теоретическим основаниям стандартов - ведь задуманы они ради благого дела. И наше российское ГАИ ведь создано не для того, чтобы взятки собирать, а для того, чтобы управлять дорожным движением. С этой позиции я и анализировал; если начать сразу с практики, то, конечно, можно было сэкономить много букв.

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

А маркетинговая сущность стандартов была блестяще раскрыта в ветке комментариев чуть выше.

Проблема со стандартизаторами не в этом.

Давным-давно, где-то в шестидесятых-восьмидесятых были практики, которые заложили основы, описали, придумали. С тех пор куча бездельников, знающих об описываемых вещах только понаслышке переписывает это из книжки в книжку. Всё больше добавляя "универсальности" и наукообразия. Всё дальше отрываясь от реальности и насущных потребностей.

Как-то один стандарт по качеству просто инвентировал. Получилась матрица Процесс - Результат - Критерии Оценки. (С последним, правда, сплошные глюки в стандарте, но можно вывести что-то вменяемое, и для дела пригодное, и стандарт не обижающее.

Всё разложилось на банальный набор чек-листов, которые просто нужно было натянуть на имеющиеся процессы и добавить те, которые отсутствовали. (Что, правда, я делать не стал, потому что мне деньги не за это платили.)

А так, большинство "экспертов" просто выучивает формулировки, ставит крестики в угадайке и дальше безумно повторяет мантры.

Про немецкие компьютерные науки

Пользователь vit_r сослался на вашу запись в записи «Про немецкие компьютерные науки» в контексте: [...] немецкие. Не то, чтобы совсем про науки. Просто мысли по поводу стандартов и индустрии софтописания [...]

  • 1
?

Log in

No account? Create an account