2013-02-22: MODELSWARD - подвожу итоги

< Блог:Максима Цепкова

Конференция http://www.modelsward.org/ - International Conference on Model-Driven Engineering and Software Development - закончилась. Впечатления первого дня - здесь. Но второй день - изменил впечатления первого дня о преимущественно недоработанных прототипах или рассуждениях общего уровня от специалистов. Это просто первый день оказался так скомпонован. А во втором - пошли вполне себе нормальные доклады про модели, кодогенерацию по ним конечных приложений, а также верификацию и тестирование моделей, которые в этом случае реально нужны. И это продолжилось на третий день.

Кроме того, в конце второго дня была poster session. Она реально отличалась от стендовых докладов у нас на конференциях, аналогов я не видел и опыт можно использовать. Суть в том, что у автора есть плакат с достаточно подробным изложением идеи, а дальше - ты с ним можешь общаться, задавать вопросы. Этот формат хорошо подходит для представления новых идей и продуктов, которые в докладе объяснять не очень хорошо, потому что нужен интерактив и рефлексия по восприятию. А в таком формате - самое оно. Еще это хорошо подходит для представления идей, заложенных в большие фреймворки и inhouse разработку. В докладе этого не сделать - надо передавать много контекста, либо поднимать уровень абстракции так что получается рекламный доклад. А в этом формате основные идеи - пишешь на плакате, их видят. А в интерактиве собеседник расспрашивает о тех аспектах, которые именно его интересуют. Что интересно, на этой сессии были так же докладчики, которые делали доклад на основных сессиях - то же плакат с кратким изложением презентации, и дальше - общение. И это позволяет более подробно пообщаться с ними. У нас это во многом заменяет общение с докладчиком после его доклада, но, во-первых, ты теряешь следующий доклад, а, во-вторых, вопросы часто должны созреть. И за 1 час такой сессии пообщаться с 5-6 докладчиками - вполне успеваешь. В общем, надо брать на вооружение.

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

Из конференции я вынес для себя, что генерация по моделям сейчас является эффективным инструментом и ее надо осваивать. Собственно, отдельные фрагменты у нас используются, но как разовые вещи. Что характеризует ситуацию? Моделеров и генераторов реально множество. Видел сравнение из 20-30 наименований. При этом утверждается, что они работают над моделью с совместимым XMI-описанием, то есть можно использовать совместно: для бизнес-логики один, для интерфейса - другой, а диаграмму классов (например) можно свободно переносить. Наверняка есть open source разработки, от университетов - точно, их представляли. Они ограниченные по функционалу и могут быть сырые, зато в текстах, можно развивать и вносить вклад. Главное - не тотальная генерация конечного приложения, а только его однородной части. Да, казалось бы, с ней особых проблем нет - берешь и формально реализуешь. Но дальше каждое изменение - согласованные правки в 5+ местах - а это уже дорого, играет человеческий фактор. В общем, буду сюда активно смотреть.

Модели применяются достаточно широко. Конечно, это автомобильное, самолетное и прочее подобное обеспечение, которое работает на железе в жестких режимах, и где важна надежность и стабильность. Там модели были всегда. Для меня было определенной неожиданностью, что модели с кодогенерацией конечного приложения достаточно широко применяются в enterprise-разработке. Это inhouse, примером чего служит Tata. Но не только. Был доклад об испанском проекте, который первоначально делался при гос.поддержке, но сейчас решения на его основе применяются для реальных коммерческих фирм и банков. Был доклад об аналогичном мексиканском проекте. Это - что запомнилось и о чем я выяснял подробности. И это - не единичные вещи. Модель сейчас, как правило, имеет графическое представление. Но это не обязательно, бывают чисто метаданные, по которым идет генерация или интерпретация - как у нас в технологии ядра. Кстати, общаясь с заказчиками и разработчиками я это встречал и в России - и в inhouse, и в продуктовой разработке. При этом применение есть как для приложения в целом, так и для фрагментов, например, для интерфейса.

Если же говорить о конференции в целом, то да, это - научная тусовка. Там представляются идеи и прототипы, а коллеги - доброжелательно спрашивают. Прототипы - разного уровня есть и вполне работающие конструкции. А еще там предтавляют "методологическую" выжимку высокого уровня от inhouse, при этом в общения с докладчиками можно узнать много подробностей. Но надо понимать, что в Европе наука достаточно активно занимается заказами на индустрию, чего в России сейчас по-моему нет. Ну и совмещение преподавания с коммерческой разработкой тоже имеется.

Научное сообщество накладывает определенную рамку на доклад - упор делается на используемые методологии, обязательно сравнение с аналогами, прототип, очень желательны метрики. При этом многие части реально неуместны, но - положено, вот и делают с разным уровнем изобретательности. Это - та форма, которая вредит содержанию, особенно в докладах, где представляются идеи будущих диссертаций - а они составляют существенную часть. Не-докладываемые у нас варианты тут нормально докладываются. Можно представить незавершенную работу, или просто диаграмму классов кусочка своего проекта, например, описания cloud infrastracture - естественно, если правильно обернуты. Так что при желании - на этих конференциях вполне можно делать доклады, вопрос - нужно ли? Профессионалы формой не очень озабочены, но они часто слишком поднимают уровень абстракции, игнорируя необходимость примеров.

Несмотря на эти недостатки, я получил с конференции достаточно много полезного. Это и общее представление о моделях, и некоторые мысли о соотнесении классического моделирования с кодогенерацией и DDD. Но ими я поделюсь отдельно. На этом - все.

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

На этом все. Обзора доклада не будет - все равно подробных публикаций материалов нет. В заключении поделюсь цитатой от Oscar Pastor (University Valencia, keynote): CASE tool should help designer to solve problem instead of adding new problem - how to use it properly! Очень характерно.

Я еще 3 дня в Барселоне, буду гулять по городу. Впечатления и фотки, кому интересно - в личном блоге.


[ Хронологический вид ]Комментарии

(нет элементов)

Войдите, чтобы комментировать.