<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>https://mtsepkov.org/index.php?action=history&amp;feed=atom&amp;title=ArchLabs-2009</id>
		<title>ArchLabs-2009 - История изменений</title>
		<link rel="self" type="application/atom+xml" href="https://mtsepkov.org/index.php?action=history&amp;feed=atom&amp;title=ArchLabs-2009"/>
		<link rel="alternate" type="text/html" href="https://mtsepkov.org/index.php?title=ArchLabs-2009&amp;action=history"/>
		<updated>2026-04-21T11:58:15Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.26.4</generator>

	<entry>
		<id>https://mtsepkov.org/index.php?title=ArchLabs-2009&amp;diff=1148&amp;oldid=prev</id>
		<title>StasFomin: оформление, орфография/пунктуация</title>
		<link rel="alternate" type="text/html" href="https://mtsepkov.org/index.php?title=ArchLabs-2009&amp;diff=1148&amp;oldid=prev"/>
				<updated>2010-01-13T20:24:23Z</updated>
		
		<summary type="html">&lt;p&gt;оформление, орфография/пунктуация&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Категория:Конференции]]&lt;br /&gt;
&lt;br /&gt;
= Общее впечатление =&lt;br /&gt;
&lt;br /&gt;
Общее впечатление — конференция гниловата, в отличие от AgileDays. Живых докладов мало, выбирать конкретно приходилось не по принципу интересующей темы, а по принципу живого доклада. Хотя, может, я пристрастен…&lt;br /&gt;
&lt;br /&gt;
Доклады, которые слышал, можно разделить на три группы.&lt;br /&gt;
* Собственно, про архитектурные решения в том или ином виде.&lt;br /&gt;
* Про великую и прекрасную архитектуру вообще и ее описание.&lt;br /&gt;
* Про конкретные продукты, который можно использовать — от вендоров этих продуктов.&lt;br /&gt;
Собственно, в этом порядке и буду делиться впечатлениями.&lt;br /&gt;
&lt;br /&gt;
А еще я выиграл сертификат на 12 часов online-курсов в Люксофт до 31.03.10. Если кому нужен — у HR.&lt;br /&gt;
&lt;br /&gt;
= Доклады про архитектурные решения =&lt;br /&gt;
&lt;br /&gt;
В эту группу попадает четыре доклада из числа услышанных.&lt;br /&gt;
* Михаил Заборов. Аналитические планы счетов как архитектурный артефакт&lt;br /&gt;
* Дмитрий Завалишин. Архитектурные детали ОС нового поколения Phantom&lt;br /&gt;
* Дмитрий Завалишин. Архитектура высоконагруженных java-приложений (отчасти условно)&lt;br /&gt;
* Сергей Горицкий. Использование MS BizTalk Server для разработки приложения с потоковой, сервисо-ориентированной архитектурой для реорганизации работ предприятия.&lt;br /&gt;
По словам Игоря Беспальчука, о том же должно было быть «Сергей Ваганов. Tree в одном. ОС, метод, архитектура», но он пересекся с докладом Заборова, так что не знаю.&lt;br /&gt;
&lt;br /&gt;
== Михаил Заборов. Аналитические планы счетов как архитектурный артефакт ==&lt;br /&gt;
&lt;br /&gt;
Безусловно, сильно отличается от всех докладов конференции. Единственный, где был представлен реальный шаблон архитектуры, использованный более чем в одном проекте, как артефакт. Слушали заинтересованно, задавали вопросы. Но доклад был последним, с 16:35 — много народу сочло, что рабочий день уже можно закончить и просто ушли.&lt;br /&gt;
&lt;br /&gt;
Доклад пересказывать не буду. В целом — очень хорошо получилось, не только на фоне данной конференции, а в целом.&lt;br /&gt;
&lt;br /&gt;
Были вопросы, чем отличаемся от 1С — разные подходы, у них свой язык, а мы на общих платформах. Было удивление, что у нас есть АБС а мы ее не продаем, занимаясь вместо этого заказной разработкой — Миша объяснил позиционированием компании. Был вопрос про пересчет баланса — надо было увереннее отвечать, что особых проблем нет, а возникающие трудности — преодолеваются по месту (с примерами). У этого вопроса, кстати, может быть минимум 3 уровня проблем, в принципе такие вопросы надо собирать и рефлексировать.&lt;br /&gt;
&lt;br /&gt;
== Дмитрий Завалишин. Архитектурные детали ОС нового поколения Phantom ==&lt;br /&gt;
&lt;br /&gt;
Это проект новой, с чистого листа разрабатываемой ОС. На отличных от Unix принципах. Есть ли принципы у Windows, я не знаю, но. возможно, они примерно туда мигрируют…&lt;br /&gt;
&lt;br /&gt;
Идея — приложения живут вечно, то есть вечно открыты. Система обеспечивает их прозрачное сохранение в виде консистентного образа памяти, причем в случае сбоев восстанавливается имеющийся консистентный слепок. В такой архитектуре становятся не нужны файлы — вообще, разве что как вид транспорта данных. А весь диск тоже превращается в одну большую память.&lt;br /&gt;
&lt;br /&gt;
Возникают интересные эффекты — сборку мусора начинает работать не только в памяти, но и на диске, в том числе — удаляя всякие временные файлы (вернее, аналогичные им объекты), старые версии приложений и тому подобный мусор :). Сменные носители можно рассматривать как транспорт, либо как образ памяти отдельных «компьютеров», для которых включается свой версия ядра.&lt;br /&gt;
&lt;br /&gt;
Правда, со сборкой мусора на терабайтном пространстве есть проблемы, но тут помогает то, что у нас есть консистентный ''snapshot'', а мусор — он не может стать нужным. Поэтому собирать в фоне можно на нем, и это не будет влиять на текущую производительность. если ресурсов в целом достаточно.&lt;br /&gt;
&lt;br /&gt;
Правда, аппаратные ресурсы при перезагрузке теряют свое состояние, их сохранить нельзя. Но это проблема драйвера, и архитектурно обеспечивается обязательность решения: ресурсы к аппаратному обеспечению предоставляются как пограничные объекты, которые заведомо пропадают при перезагрузке, и драйверы должны обрабатывать соответствующие исключения. Плюс — такая архитектура хорошо поддается автоматическому тестированию.&lt;br /&gt;
&lt;br /&gt;
Вторая идея — защита не на уровне процесса, а на уровне объекта, объекты и ссылки на них можно легко передавать между приложениями. Включая передачу по сети и организацию прокси-объектов. Правда, это порождает задачу сборки мусора уже в рамках совокупности компьютеров, но это тоже решаемо…&lt;br /&gt;
&lt;br /&gt;
Проекту примерно год. Нынешнее состояние — ядро в целом как-то работает на эмуляторе в Windows и почти запустилось на голом железе (проблемы драйверов), есть основные драйверы, есть некоторое GUI (TinyGL), в каком-то виде TCP-стек, есть ограниченное портирование байт-кода JVM в байт-код этой машины. Планы — запуститься на железе, обеспечить OpenGL и поддержать JVM в хорошем объеме, избавиться от остатков GPL-лицензии и выложить все в OpenSource, но под другой лицензией.&lt;br /&gt;
&lt;br /&gt;
Все. Вполне интересно. Хотя пошел потому, что альтернативы — гнилые. &lt;br /&gt;
&lt;br /&gt;
== Дмитрий Завалишин. Архитектура высоконагруженных java-приложений ==&lt;br /&gt;
&lt;br /&gt;
Тот же автор, что и проект ОС Phantom. Пошел потому, что тяжело было с альтернативами.&lt;br /&gt;
&lt;br /&gt;
Основная мысль — надо думать. Потому что язык многое делает за тебя, скрывает сложность конструкций. Но если не думать — то приложения будут медленные. У них — позитивный опыт, в том числе — система судовождения ''Gardemarine'', которая должна жить в realtime независимо от сборки мусора и прочего самочувствия системы. Ну и детали — где именно надо думать. И местами — как они преодолели трудности. Например, отрисовку фона с градиентами — через кеш, который встроили на базовом уровне в отрисовку, а не в конкретный объект. Хотя лично я бы просто убрал градиенты — но стремления эстетов — понятны.&lt;br /&gt;
&lt;br /&gt;
== Сергей Горицкий. Использование MS BizTalk Server ==&lt;br /&gt;
&lt;br /&gt;
Вроде выступал раньше на других конференциях, но я слушал в первый раз — потому что с альтернативами было трудно. Это начальник IT-отдела на ФГУП Воткинский завод (Искандер, Тополь и многое другое). Производство — уникальное и сложное. И оборонное, поэтому сами разрабатывают модули вокруг Паруса.&lt;br /&gt;
&lt;br /&gt;
Они не могут позволить централизованное решение на СУБД. Моя интерпретация — потому что не получается сделать команду поддержки проекта. Поэтому режим — человек-проект, модули — небольшие. И дальше они пытаются использовать современные технологии интегрирования для их объединения, наступая на многочисленные грабли. Но идут вперед. О чем и был рассказ. Правда, самые большие грабли — не получается у них читать английскую документацию, а по-русски всего очень мало. Но это, во многом, тоже объективные условия — Удмуртия.&lt;br /&gt;
&lt;br /&gt;
Я слышал два проекта. Первый — заявленный в названии, BizTalk. У них быстро получилось взлететь на текстовых файлах. А вот построить взаимодействие через сообщения вместо файлов — почему-то не выходит… Второй — связать несколько модулей через SharePoint. Выставить web-сервисы — получилось быстро, а вот заставить взаимодействовать с помощью какого-то дизайнера бизнес-процессов в VS — не получается. Максимум — один к одному, просто коммутация, а хочется — более сложные схемы. Пока научили нопрямую вызывать сервисы модулей друг друга без SharePoint — так оно работает. Но они борьба продолжается…&lt;br /&gt;
&lt;br /&gt;
Такие вот романтики. В целом — вполне понятно желание выступить, но архитектура…&lt;br /&gt;
&lt;br /&gt;
= Про конкретные продукты, который можно использовать — от вендоров этих продуктов =&lt;br /&gt;
&lt;br /&gt;
Из этого заходил только на один доклад — «Александр Хельвас. Adobe LiveCycle. Какие гвозди подходят к этому молотку», опять-таки по отсутствию альтернатив, и слушал частично. Вообще эту секцию проводили в одном из больших залов, но народ шел сильно неохотно, с третьего доклада ее перевели в маленький зал…&lt;br /&gt;
&lt;br /&gt;
== Александр Хельвас. Adobe LiveCycle ==&lt;br /&gt;
&lt;br /&gt;
Рассказывали про решения на основе AdobeReaderExtention. Это как создаешь в этой штуке форму, которую дальше пользователь обычного AdobeReader может заполнять. При этом в форму можно вставить справочники, включая ОКАТО (но это — предел сложности). И проверку логики на JavaScript или чем-то похожем. Анонсируемая область применения — сбор всякой информации, если у отправителя нет доступа к инету. Правда, если формы не тривиальные, то у них должен быть достаточно мощный комп, чтобы все шевелилось. А в российских условиях там, где проблемы с инетом, и компы стоят не новые, типа P3… Передача результата — заполненный xml, который при необходимости можно зашифровать и электронно подписать.&lt;br /&gt;
&lt;br /&gt;
А еще, если инет все-таки есть, то это приложение может обращаться к серверу, получать и принимать данные оттуда. Можно делать формы с индивидуальной настройкой на клиента и прочее. И результаты получать поверх инета, тоже зашифрованные и подписанные.&lt;br /&gt;
&lt;br /&gt;
А лицензируется все это — на одну изготовленную форму, плюс отдельно — инструмент изготовления.&lt;br /&gt;
&lt;br /&gt;
В целом — неинтересно. Такая примитивная платформа для простых и кривых приложений…&lt;br /&gt;
&lt;br /&gt;
= Про великую и прекрасную архитектуру вообще и ее описание =&lt;br /&gt;
&lt;br /&gt;
В эту группу попадает три доклада из числа услышанных.&lt;br /&gt;
* Олег Боев. Документирование архитектуры ПО: обеспечение потребностей заинтересованных лиц.&lt;br /&gt;
* Андрей Вербицкий. Что такое «хорошая архитектура». Субъективные и объективные критерии.&lt;br /&gt;
* Дмитрий Безуглый. Как добиться понимания Архитектуры заинтересованными лицами проекта. (Презентация архитектуры)&lt;br /&gt;
&lt;br /&gt;
== Олег Боев. Документирование архитектуры ПО: обеспечение потребностей заинтересованных лиц ==&lt;br /&gt;
&lt;br /&gt;
Был аншлаг. А получился отстой. Докладчик рассказывал про то, как надо описывать по стандартам. Учитывая, что архитектуру — читают разные люди и им нужна разная информация. Показывал ER-схему, где есть система, архитектура, лица, представления (view) для них сделанные с помощью viewpoint — шаблонов, описывающих интересную этим категориям информацию. Эта схема, кстати, была еще у Безуглого, но в более авторсокй интерпретации. а тут — взята из стандарта, причем квадратики большие, а надписи маленькие.&lt;br /&gt;
&lt;br /&gt;
Все это было в таком ужасающе медленном темпе подачи содержательной информации, что я не выдержал и ушел.&lt;br /&gt;
&lt;br /&gt;
Но в начале был перл: «Лучше описывать архитектуру кратко, а то потом замучаешься все это поддерживать». Такая вот авторская интерпретация, почему описание архитектуры должно быть небольшим…&lt;br /&gt;
&lt;br /&gt;
== Андрей Вербицкий. Что такое «хорошая архитектура». Субъективные и объективные критерии ==&lt;br /&gt;
&lt;br /&gt;
Весьма живой и интересный докладчик. В докладе много аналогий программной архитектуры и архитектуры реальной. Выводы — что архитектура определяется не технологиями, что красивое решение не гарантирует хорошей архитектуры, равно как и функциональное. Что архитектура должна учитывать ландшафт, окружение.&lt;br /&gt;
&lt;br /&gt;
Описание архитектуры должно быть кратким, включать только главное — чтобы это можно было держать в памяти. Что если вы проектируете птицу, то надо следить за способностью к полету, а то может получиться пингвин, для запуска которого нужна катапульта. И что многие проекты напоминают такого пингвина с катапультой. В вопросах сказал, что Linux совершенно не имел ввиду, это случайно.&lt;br /&gt;
&lt;br /&gt;
Говорил о компромиссе между универсальностью и функциональностью — универсальность ограничивает функциональность в конкретных условиях. О том, что сравнивая и выбирая решения надо рассчитывать на послезавтра, когда приложение будет работать: сегодня проектируем, завтра разрабатываем, послезавтра выпускаем. Упоминал ТРИЗ, в частности метод маленьких человечков, принцип Парето.&lt;br /&gt;
&lt;br /&gt;
Очень позитивно оценивает Agile — ориентация на результат по каждой итерации и вообще итеративная разработка, во-первых, уменьшает основной риск — время устаревания требований, а, во-вторых, препятствует появлению в принципе неработоспособных решений. На него наезжали из зала, некоторое время он возражал, но конструктива не получилось и рефери из организаторов это прервал.&lt;br /&gt;
&lt;br /&gt;
В качестве текущих вызовов архитектуры выделил ''Identity'' (единая авторизация и система прав), CRM (ориентация на клиента в самом широком смысле) и SelfCare (самообслуживание клиентов, тоже в широком смысле, когда им доступны те же интерфейсы, что и сотрудникам с точностью до прав). Но конкретика у него не слишком убедительная.&lt;br /&gt;
&lt;br /&gt;
Сожалел по поводу того, что в отличие от реальных архитекторов, программисты не могут посмотреть и пощупать другие успешные решения: нет библиотек, внутри все весьма закрыто. Шаблоны — это да, но это — наработки, а не готовые решения. Тут у него была дискуссия с аудиторией, но она не слишком получилась — все-таки уровень у него и у аудитории был сильно разный.&lt;br /&gt;
&lt;br /&gt;
В целом — интересный взгляд сверху.&lt;br /&gt;
&lt;br /&gt;
== Дмитрий Безуглый. Как добиться понимания Архитектуры заинтересованными лицами проекта ==&lt;br /&gt;
&lt;br /&gt;
Впечатления — смешанные. Не понравилась позиция автора — Гуру, который учит зеленых технарей, определенное высокомерие. Правда, на определенные амбиции он имеет право, это видно из информации (крупный проект — 50 чел, 30 чел-лет, большой бюджет — 2.5 млн$), и вообще из уровня мышления. Но надо уважать слушателей. &lt;br /&gt;
&lt;br /&gt;
Если отстраниться от позиции, то доклад — эклектичен.&lt;br /&gt;
&lt;br /&gt;
Первая компонента доклада — про описание архитектуры в целом. Описание должно быть коротким и не включать большие заумные схемы. И вообще стремление программиста поместить все на одну большую схему — не для презентации. Потом в авторском варианте была ER-диаграмма из стандартов — система, архитектура, лица, представления (view) для них сделанные с помощью viewpoint — шаблонов, описывающих интересную этим категориям информацию. Определения архитектуры и обязанностей архитектора он не дал, хотя из зала хотели. И про описание тоже, была триада &lt;br /&gt;
* Проблематизация — выявление проблем, &lt;br /&gt;
* Тематизация — набор решений, &lt;br /&gt;
* Метафоризация — упаковка решения, &lt;br /&gt;
но попытки как-то конкретизировать не получились.&lt;br /&gt;
&lt;br /&gt;
Вторая компонента доклада — о том, что архитектура — это не очередная модная технология или серебряная пуля, она должна быть связанна с потребностями заказчика и отвечать его вызовам по цепочке «Вызовы — Цели — Преимущества — Проект — Архитектура». Почему Вызовы, а не Проблемы? Потому что наличие проблем означает сомнение в качествах менеджера от бизнеса, а он не любит, если в нем сомневаются. Поэтому сейчас и можно говорить, что проблем нет, есть вызовы. При движении по этой цепочке для архитектуры были упомянуты некие Сценарии атрибутов качества, связывающие архитектуру с бизнесом.&lt;br /&gt;
&lt;br /&gt;
Докладчик ссылался на подход Microsoft по поводу продажи архитектуры, вроде, что в презентации должны быть ссылки.&lt;br /&gt;
&lt;br /&gt;
Из зала попробовали зайти с другой стороны — с обязанностей архитектора, указав на то, что связь с бизнесом — это, скорее, бизнес-аналитик. В ответ было пренебрежение бизнес-аналитиком. А определение архитектора он дал вполне интересное: «тот, кто связывает точки зрения».&lt;br /&gt;
&lt;br /&gt;
Но в целом на всем этом лежит несмываемая печать RUP и твердая уверенность в его правильности. Отсюда же — крайне негативное отношение к Agile вообще, и к его способности производить архитектуру в частности.&lt;br /&gt;
&lt;br /&gt;
И третья компонента доклада — про подготовку презентации, восприятие. О том, что проект дают под людей, а не под технологии. О том, что надо задействовать все каналы восприятия, потому что 55 % картинки, 30 % слух, 3 % чтение и 12 % соучастие (действие). Стили восприятия — 35 % обсуждение (вопрос почему?), 22 % логика (нужна первичка), 18 % практический опыт, 25 % самообучение. Принципы принятия решений — сфокусированный, логический, креатив, эмоции. Соответственно, когда готовите презентацию, то надо иметь ввиду все группы. Это сложно, но можно, и потому — нужно. Интересный факт, по статистике для обычных людей в 80 % случаев достаточно уверенно сказать «причина есть», можно даже ее не обсуждать.&lt;br /&gt;
&lt;br /&gt;
В целом все.&lt;/div&gt;</summary>
		<author><name>StasFomin</name></author>	</entry>

	</feed>