Anatoly Levenchuk (ailev) wrote,
Anatoly Levenchuk
ailev

Заметки с заседания по порождающему проектированию

Вчера у нас было 64 заседание Русского отделения INCOSE. Мы продолжили разбираться с моделеориентированной системной инженерией (http://ailev.livejournal.com/1023574.html), темой была практика порождающего проектирования (материалы тут: http://incose-ru.livejournal.com/36942.html -- докладчиком был Сергей Кравченко, вот страничка с его видеороликами "для тех, кто понимает": https://www.youtube.com/user/zerganalizer).

Мои заметки с заседания:

1. САПРы слабенькие, средние и топовые почти неразличимы в плане возможностей режима "редактирование". Различия становятся драматическими, когда речь заходит о порождающем проектировании. Тут играют свою роль не только мощность геометрического движка, и возможности среды программирования над этим движком. У топовых САПРов в этом плане огромные возможности.

2. Нормальная работа с порождающим проектированием требует знакомства сразу с тремя предметными областями:
-- инженерией (того инженерного уклада -- множества стандартов -- http://ailev.livejournal.com/1027975.html), для которого происходит порождение
-- геометрией (ибо это тот язык, на котором решается задача: все эти NURBS, тесселяции, "массивы" и т.д.).
-- программированием (в том числе в весьма неординарных парадигмах, например "программирование на сапровских деревьях")

Конечно, со временем тут появится инструментарий, позволяющий более тонкое разделение труда, но пока людей со всеми тремя образованиями не найти: программисты плохи в геометрии, инженеры плохи в программировании, геометров как таковых никто не учит и т.д.. А нет подготовленных людей -- нет и соответствующей массовой деятельности.

3. Инструментарий для порождающего программирования пока не слишком развит. Большинство систем представляют либо интерфейс "геометрического ассемблера" с необходимостью программирования во много слоёв, или наоборот, возможность указать небольшое число параметров для чего-то высокоспециализированного и поэтому уже негибкого. Сергей Кравченко как раз утверждал, что он разработал инструментарий, позволяющий облегчить задачу порождающего проектирования в среде программирования CATIA.

4. Представление геометрии "в данных" (а не в программах) хорошо только при передаче информации от "САПР-редактора" к "САПР-редактору". Ежели перейти к порождающему проектированию, то геометрия представляется уже не столько данными (формами, shapes), но и правилами (rules), которые представляют собой программы в некоторой модели вычислений. Передача правил -- это передача программ, для которых "нейтрального" или "онтологического" или ещё какого представления не придумано в общем виде. Поэтому при переходе к порождающему проектированию придётся всё жестче и жёстче настаивать на архитектурном решении, которое было когда-то принято в проекте Simantics: "даже не думать, что можно как-то нормализовать/унифицировать представление модели. Оно всегда глубоко специфично для конкретного солвера, и туда даже не стоит пытаться лезть. Можно заниматься только унификацией работы с данными, которые подаются моделям+солверам на вход, и получаются на выходе из моделей+солверов".

5. В момент осознания, что порождающее проектирование -- это прежде всего программирование над API геометрических движков, появятся САПР, в которых будет меньшая ориентация на редактирование, и большая ориентация на программирование -- то есть САПР, более похожие на привычные IDE. И нужно не забывать, что все эти "деревья" -- это в существенной мере управление конфигурацией, т.е. это вотчина PLM. Так что в связи с неминуемым расцветом порождающего проектирования можно ожидать резкого изменения архитектурных решений и новых (прежде всего связанных с программированием и парадигмами вычислений над геометрией) технологий. Как всегда в таких случаях смены основных технологий, возможна и смена лидеров сапростроения.
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 8 comments