<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Agile в Беларуси</title>
	
	<link>http://www.agile.by</link>
	<description>Agile, Scrum, XP, TDD, PM... и т.п.</description>
	<pubDate>Thu, 09 Jul 2009 13:27:38 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/agilebelarus" type="application/rss+xml" /><feedburner:emailServiceId>agilebelarus</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Agile Eastern Europe</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/lmU-8AlEP1U/agile-eastern-europe.html</link>
		<comments>http://www.agile.by/2009/07/09/agile-eastern-europe.html#comments</comments>
		<pubDate>Thu, 09 Jul 2009 13:27:38 +0000</pubDate>
		<dc:creator>Dmitry Zdanovich</dc:creator>
		
		<category><![CDATA[Новости]]></category>

		<guid isPermaLink="false">http://www.agile.by/?p=344</guid>
		<description><![CDATA[В масштабах Восточной Европы, этой осенью произойдет грандиозное событие – конференция Agile Eastern Europe, посвященная гибким подходам в проектах программной разработки.
Подходы Agile Software Development, за последние пять-семь заслужили доверие, и нашли популярность во всем мире. С вами поделятся своим опытом гибкой разработки более сорока докладчиков, из таких стран как: США, Канада, Бельгия, Польша, Словакия, Чехия, [...]]]></description>
			<content:encoded><![CDATA[<p>В масштабах Восточной Европы, этой осенью произойдет грандиозное событие – конференция <strong>Agile</strong><strong> </strong><strong>Eastern</strong><strong> </strong><strong>Europe</strong>, посвященная гибким подходам в проектах программной разработки.</p>
<p>Подходы <strong>Agile Software Development</strong><strong>, </strong>за последние пять-семь заслужили доверие, и нашли популярность во всем мире. С вами поделятся своим опытом гибкой разработки более сорока докладчиков, из таких стран как: США, Канада, Бельгия, Польша, Словакия, Чехия, Финляндия, Эстония и, конечно же, - Украина, Россия, Беларусь.</p>
<p>На сегодняшний день, Аджайл - это не только мейнстрим в мире управления проектами. Де-факто, это стандарт успешных проектов во многих компаниях. Докладчики представляют опыт таких звезд мировой индустрии, как Toyota, Nokia, 3M и др.</p>
<p>Одним из основных вопросов многих докладов являются вопросы <strong>успешного применения гибкой разработки в распределенной среде</strong>. Этот вопрос крайне важен для украинского рынка, где больше половины разработки осуществляется в режиме <em>team extension</em>. Местные разработчики являются частью компании, команды которой работают параллельно над теми же продуктами в других уголках мира.</p>
<p><strong>Ютта Екштайн (Jutta Eckstein)</strong><strong>,</strong> автор книги <a href="https://www.amazon.com/dp/0932633579?tag=wwwagileukrai-20&amp;camp=0&amp;creative=0&amp;linkCode=as1&amp;creativeASIN=0932633579&amp;adid=0EZWGAQWJ2QFBS3SE4FG&amp;" target="_blank">Agile Software Development in the Large</a> поделится своим опытом построения эффективных моделей распределенной разработки с элементами Agile.</p>
<p>Бережливая разработка ПО (<strong>Lean Software Development</strong>) - это опыт таких компаний как Toyota и 3M в разрезе оптимизации процессов на уровне организаций. Эта тема настолько масштабна, что достойна отдельной конференции.</p>
<p>На Agileee в числе ключевых докладчиков вы сможете послушать, поучиться и пообщаться с <strong>Мери Поппендик (Mary Poppendieck)</strong> - автором серии книг по Lean тематике, среди которых бестселлер: <a href="http://www.amazon.com/gp/product/0321437381?ie=UTF8&amp;tag=wwwagileukrai-20&amp;linkCode=xm2&amp;camp=1789&amp;creativeASIN=0321437381" target="_blank">Implementing Lean Software Development: From Concept to Cash</a>.</p>
<p>В числе докладчиков два сертифицированных Скрам-тренера (CST): <strong><em>Робин Даймонд (Robin Dymond)</em></strong><strong> и <em>Борис Глогер (Boris Gloger)</em>.</strong></p>
<p>И много-много-много других <a href="http://agileee.com/schedule/program-details/">прекрасных людей </a><a href="http://agileee.com/schedule/program-details/">и </a><a href="http://agileee.com/schedule/program-details/"> </a><a href="http://agileee.com/schedule/program-details/">сверхинтересных докладов</a>.</p>
<p>Этот яркий профессиональный праздник пройдет в Киеве. И у вас есть шанс стать его частью на два полных дня!</p>
<p>Официальный сайт конференции - <a href="http://agileee.org">agileee.org</a></p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/lmU-8AlEP1U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/07/09/agile-eastern-europe.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/07/09/agile-eastern-europe.html</feedburner:origLink></item>
		<item>
		<title>Про UML, холивар и последующий холишит</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/Qb4w5BjSlI0/pro-uml-xolivar-i-posleduyushhij-xolishit.html</link>
		<comments>http://www.agile.by/2009/07/07/pro-uml-xolivar-i-posleduyushhij-xolishit.html#comments</comments>
		<pubDate>Tue, 07 Jul 2009 09:12:50 +0000</pubDate>
		<dc:creator>Денис Петелин</dc:creator>
		
		<category><![CDATA[Жизнь]]></category>

		<category><![CDATA[Управление проектами]]></category>

		<guid isPermaLink="false">http://www.agile.by/2009/07/07/pro-uml-xolivar-i-posleduyushhij-xolishit.html</guid>
		<description><![CDATA[ Сорри, долго молчал - боролся с подобранными помойными котами: болели всем чем можно болеть, глисты там самое безобидное. Сейчас вроде остался только энтероколит, так что снова зачесались руки и появилось время сказать слово. Собственно, говорю – о наболевшем.
Когда писался agile manifesto, все были утомлены фанатиками имеющихся на рынке методологий. Структурный подход и имеющиеся методики [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.agile.by/wp-content/uploads/2009/07/image.png" target="_blank"><img style="border-right-width: 0px; margin: 0px 5px 0px 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="кот, дрыхнет" border="0" alt="кот, дрыхнет" align="left" src="http://www.agile.by/wp-content/uploads/2009/07/image-thumb.png" width="144" height="109" /></a> Сорри, долго молчал - боролся с подобранными помойными котами: болели всем чем можно болеть, глисты там самое безобидное. Сейчас вроде остался только энтероколит, так что снова зачесались руки и появилось время сказать слово. Собственно, говорю – о наболевшем.</p>
<p>Когда писался agile manifesto, все были утомлены фанатиками имеющихся на рынке методологий. Структурный подход и имеющиеся методики стали настолько тяжелыми, что рухнули практически везде. Но надо помнить, что изначально они были вполне работоспособными. По ним жили десятки лет, но однажды поняли, что накладные расходы на эти методологии слишком велики. Такова судьба любой хорошей методики – она обрастает деталями, диаграммами, чеклистами, чтобы разобраться во всем этом деле пишут инструкции, инструкции сводят в подборки документов, подборки перерабатывают в процессы – и оба-на! мы получили очередную мегатяжеловесную Методологию, доведенную до идиотизма детализацией и оснащенную армией фанатиков, которые борются уже не за успех проекта, а за чистоту канона – чтоб все было Как-Завещал-Великий-Ленин, и если проект от этого загнулся – тем хуже для проекта.</p>
<p>Похоже, то самое начинается с аджайлом. Мы недавно запускали новый проект. Проект со старта имеет довольно развесистую структуру. Представить графически эту развесистую структуру – довольно сложно. Однако для релиз плэннинга надо не только структуру представить, но и рамки очертить. Мы использовали для этого UML и <a href="http://www.sparxsystems.com.au/" target="_blank">Sparx Enterprise Architect</a>. UML потому что юзкейс-диаграммы все с грехом пополам читают, Sparx – потому что удобно рисовать и все отрисованные юзкейсы <a href="http://www.sparxsystems.com.au/products/mdg/int/vs/index.html" target="_blank">можно поддерживать в синхронизации</a> с Visual Studio Team System 2008, который используется на проекте. Соответственно затем пользуясь интеграцией Team System + Microsoft Office делаем релиз плэннинг – хоть в Excel, хоть в Project.</p>
<p>Подход исключительно прост, польза для проекта очевидна, удобство для команды знакомой с UML и Sparx – тоже очевидно. Рассказал про это камрадам в Питере. Что тут было! <strong>ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ UML, ЗНАЧИТ У ВАС НЕ АДЖАЙЛ! ИБО В АДЖАЙЛЕ СКАЗАНО – НИКАКОЙ ДОКУМЕНТАЦИИ!</strong> Дорогие камрады, это распространенное заблуждение. На самом деле:</p>
<ol>
<li>Если посмотреть множество диаграмм с примерами, хотя бы из книжек Бека или <a href="http://www.amazon.co.uk/Using-Uml-Engineering-Components-Programming/dp/0582832683" target="_blank">специальных изданий</a>, то становится ясно – диаграммы вообще и UML-диаграммы в частности как визуальное средство коммуникаций очень ценились отцами-основателями. </li>
<li>Аджайл не требует отсутствия документации. Если бы требовал – фотографии доски тоже были под запретом, потому что это хоть и кривая, но тоже документация. Аджайл требует минимальной и достаточной документации – и UML-диаграммы (при условии что у вас их все умеют читать) отлично эту задачу решают. </li>
</ol>
<ol>С частным вопросом разобрались легко, но этот частный вопрос – следствие попытки превратить аджайл в некий догмат, довести его до абсолюта, и все что противоречит догмату – объявить неверным. Затем – требующим искоренения.</ol>
<ol>Коллеги, напоминаю: изначальный посыл аджайла – ставка на умных людей и их умение думать, а не на процесс. То, что хорошо для проекта – это и должно входить в вашу методику. Все остальное – от лукавого.</ol>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/Qb4w5BjSlI0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/07/07/pro-uml-xolivar-i-posleduyushhij-xolishit.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/07/07/pro-uml-xolivar-i-posleduyushhij-xolishit.html</feedburner:origLink></item>
		<item>
		<title>Quality assurance</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/lJCr8-Vi--k/quality-assurance.html</link>
		<comments>http://www.agile.by/2009/06/22/quality-assurance.html#comments</comments>
		<pubDate>Mon, 22 Jun 2009 08:24:45 +0000</pubDate>
		<dc:creator>Dmitry Zdanovich</dc:creator>
		
		<category><![CDATA[Практики Agile]]></category>

		<category><![CDATA[Управление проектами]]></category>

		<guid isPermaLink="false">http://www.agile.by/?p=332</guid>
		<description><![CDATA[Software quality assurance (SQA или просто QA) - это деятельность по оценке качества и обеспечению соответствия стандартам и процессам (хотя многие это считают синонимом тестированию).
Обеспечивает ли следованию процессу качество? Возможно, если процесс ориентирован на качество и имеет средства для его поддержания. И на проекте «правильные» люди.
Конечно, теоретики скажут, что процесс гарантирует качество, что все проблемы [...]]]></description>
			<content:encoded><![CDATA[<p>Software quality assurance (SQA или просто QA) - это деятельность по оценке качества и обеспечению соответствия стандартам и процессам (хотя многие это считают синонимом тестированию).</p>
<p>Обеспечивает ли следованию процессу качество? Возможно, если процесс ориентирован на качество и имеет средства для его поддержания. И на проекте «правильные» люди.</p>
<p>Конечно, теоретики скажут, что процесс гарантирует качество, что все проблемы вызваны нарушением процедур, что проект «неправильный» или что все ошибки из-за людей, а не из-за процесса. На самом деле, люди являются наиболее важной частью успеха, в то время как даже полное следование процессу может привести к провалу. И в этом плане термин SQA вводит в заблуждение. SQA обеспечивает не качество продукта, а соответствие стандартам и процессам, что совсем не одно и то же.</p>
<p>Давайте рассмотрим именно качество продукта, а не следование процессу. Качество можно проверять или же оно может быть «встроено» в процесс создания продукта. Эти подходы дополняют друг друга. В случае, если используется только контроль, то придется тратить много времени на исправление ошибок, а если нет контроля, то повышается риск выпустить некачественный продукт.</p>
<p>Для повышения качества можно использовать разнообразные инструменты и подходы. Важно понимать, что нужно сделать, как это сделать и как проверить, что сделанный продукт и есть то, что нужно заказчику.</p>
<p>Обеспечение качества – это очень большая тема. В Интернете есть много информации по приводимым ниже техникам, в этом обзоре я просто кратко упомяну некоторые. Рассмотрим следующие области:</p>
<ul>
<li>Требования</li>
<li>Создание</li>
<li>Предупреждение проблем в будущем</li>
</ul>
<p><span id="more-332"></span></p>
<h3>Требования</h3>
<p>Проект должен решить правильные проблемы; не просто сделать вещи правильно, но в первую очередь сделать правильные вещи. Команда должна помочь клиенту понять, что надо сделать. В случае, если заказчик объяснил свое видение продукта, команда может проанализировать требуемую функциональность с учетом видения. И указать на потенциальные проблемы или недостатки на ранней стадии, что позволит уменьшить затраты и увеличить общее удовлетворение от проекта.</p>
<p>Иногда заказчик не хочет предоставлять даже видение (например, это считается коммерческой тайной). Команда может попытаться объяснить недостатки такого подхода и потенциальные риски, но конечное решение все равно остается за заказчиком. Конечно, в такой ситуации команда создаст свой вариант видения, но оно может отличаться от видения клиента (скорее всего, оно и будет отличаться).</p>
<p>У клиента может не быть времени даже обсуждать требования. Опять-таки, это его решение. Команда может только предупредить о возможных негативных последствиях для проекта.</p>
<p>Для улучшения качества команда может предоставить свою экспертизу в области решения – пользовательский интерфейс (особенно специалистами по user interaction и информационной архитектуре), технические детали (например, платформа, требования к производительности или масштабируемости в зависимости от бизнес-требований к системе) или даже в бизнес-области, если у команды есть опыт работы с похожими проектами.</p>
<h3>Создание</h3>
<p>Команда сделала, что смогла, чтобы выяснить, что нужно сделать. Теперь вопрос – как это сделать? Для начала важно понимать, что качество имеет свою цену. В краткосрочном периоде высокое качество стоит дороже, но в долгосрочном низкий уровень качества может стоить больше (так обычно и происходит) чем высокий – команда должна постоянно исправлять ошибки, с кодом тяжело работать, нужно много времени на то, чтобы что-то изменить или добавить новую функциональность.</p>
<p>Нужно определиться, какой уровень качества необходим для данного проекта. А затем команда должна постоянно поддерживать этот уровень в течение всего проекта.</p>
<p>Для этого команда может использовать:</p>
<ul>
<li>Архитектуру</li>
<li>Definition of done</li>
<li>Peer code review</li>
<li>Рефакторинг</li>
<li>Тестирование (unit, integration, ручное, производительности и т.д.)</li>
</ul>
<h5>Архитектура</h5>
<p>Раньше было очень много шума по поводу архитектуры в рамках agile подходов. Самые радикальные говорили, что архитектура должна возникать во время разработки без всякого предварительного планирования и архитектурного дизайна. Мне кажется, это преувеличение. Сумма частей не всегда есть целое, поэтому хороший дизайн небольших модулей не гарантирует хорошую архитектуру системы. На практике внимание к архитектуре зависит от сложности системы – для маленьких систем в хорошо известной области у команды уже есть готовые решения, а вот для больших систем с серьезными нефункциональными требованиями нужно отдельно заняться архитектурой. Хотя не стоит впадать и в другую крайность – заранее продумывать все мельчайшие детали; достаточно продумать наиболее важные и те, что тяжело изменить позже.</p>
<p>Иногда про архитектуру как-то забывают после ее создания. Естественно, со временем атрибуты качества архитектуры ухудшаются – архитектура становится менее понятной, ее тяжелее поддерживать, устойчивость нарушается и т.д. Поэтому необходимо периодически (или когда новые требования не ложатся на существующий дизайн) пересматривать архитектуру и изменять при необходимости.</p>
<h5>Definition of done</h5>
<p>В Scrum есть хорошая концепция “done”. История или сделана, или нет. Она не может быть «сделана, но…» или «почти сделана». Как определить, что история на самом деле сделана и нет никаких «но»? Используйте definition of done.</p>
<p>Definition of done – это простой проверочный список. В нем содержатся условия, которым должна удовлетворять история, чтобы считаться завершенной.</p>
<p>Если мы хотим встроить качество, то definition of done отличное место для этого. Например, чтобы избежать простейших ошибок, команда может решить включить условие, что «Нет новых предупреждений от PMD или FindBugs».</p>
<p>Идея definition of done может быть предложена кем угодно, но принимать решение об использовании должна команда (а не менеджер проекта или ScrumMaster). Если команда не видит пользы, то она найдет способ обойти эти критерии.</p>
<p>Definition of done можно расширить за пределы истории – например, команда может ввести definition of done для спринта или релиза (провели тестирование производительности, система хорошо работает под Windows и под Linux). Это помогает удостовериться, что система удовлетворяет нефункциональным требованиям.</p>
<h5>Peer code review</h5>
<p>Одним из мощных средств по улучшению качества является peer code review (к тому же оно позволяет передавать знания и выстроить общее понимание и стандарты внутри команды, а также разрабатывать навыки и учиться быстрее). Иногда команда забывает про code review, иногда сроки сдачи близки (да, deadline весьма часто где-то очень близко <img src='http://www.agile.by/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ), но команда не проводит code review. Чтобы избежать этой проблемы, команда может просто включить code review в definition of done – и тогда не получится двигаться дальше, пока не провели code review.</p>
<p>В одной команде мое предложение по включению code review в definition of done тщательно обсудили, и затем команда пришла к выводу, что это было бы полезно. Впоследствии это помогло обнаружить несколько серьезных проблем и создать общий стиль и понимание. В другой команде похожее предложение отклонили. Спустя некоторое время вторая команда тоже пришла к выводу, что включение code review в definition of done полезно.</p>
<h5>Рефакторинг</h5>
<p>Код со временем ухудшается из-за постоянных изменений. Рефакторинг - одно из наиболее популярных и эффективных средств для улучшения качества кода и увеличения его понятности. Можно сделать его частью definition of done. Или выделять специальное время на рефакторинг (например, в конце спринта).</p>
<h4>Тестирование</h4>
<p>Unit и integration тесты увеличивают стабильность и уменьшают количество ошибок за счет обнаружения проблем на ранних фазах. К тому же они помогают продумать разнообразные варианты, делая систему более надежной.</p>
<p>Ручное тестирование может проводиться разработчиками (когда завершили историю), тестировщиками, а также командой Product Owner’а (это может быть и один человек) во время приемочного тестирования.</p>
<p>Конечно, есть много других типов тестирования, выполняющих свои особые задачи.</p>
<p>Перед началом использования какого-нибудь из видов тестирования стоит проанализировать, будет ли именно это тестирование полезно для проекта.</p>
<h3>Предотвращение проблем в будущем</h3>
<p>Отлично, команда исправила проблему. Но немного позже опять сражаются с похожей проблемой. Опять и опять. Урок не усвоен. Чтобы усвоить урок, команде нужно определить проблему, выявить, проанализировать и исправить причину проблемы. А это как раз одна из целей ретроспективы.</p>
<h3>Качество как часть разработки</h3>
<p>Все вышесказанное можно просуммировать как простой контрольный список:</p>
<ul>
<li>Сделайте требования достаточно адекватными реальной бизнес-проблеме</li>
<li>Встройте качество в процесс создания
<ul>
<li>Архитектура</li>
<li>Unit/integration тесты</li>
<li>Definition of done</li>
<li>Рефакторинг</li>
<li>Peer code review</li>
</ul>
</li>
<li>Протестируйте</li>
<li>Проверьте, что результат это то, что запрашивалось</li>
<li>Проверьте, что результат это то, что на самом деле нужно</li>
</ul>
<p>Хм, весьма похоже на процедуру :-). Не совсем. Основное отличие – все эти практики можно использовать отдельно в зависимости от контекста. Некоторые практики могут быть бесполезными или даже вредными в конкретном проекте.</p>
<p>И самое главное – не забывайте про людей. Очень важно, чтобы команда понимала, как эти практики могут помочь им. И тут необходим консенсус. Jean Tabaka в ее книге “Collaboration Explained” определила консенсус как решение, которое каждый готов поддерживать и нет таких, кто категорически не согласен с этим решением. Команда должна определиться с набором практик, которые каждый член команды готов поддерживать.</p>
<p>А затем просто наслаждайтесь высоким качеством продукта.</p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/lJCr8-Vi--k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/06/22/quality-assurance.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/06/22/quality-assurance.html</feedburner:origLink></item>
		<item>
		<title>Software People 2009. Презентация.</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/bEMciWiIeww/software-people-2009-prezentaciya.html</link>
		<comments>http://www.agile.by/2009/05/26/software-people-2009-prezentaciya.html#comments</comments>
		<pubDate>Tue, 26 May 2009 13:57:08 +0000</pubDate>
		<dc:creator>Yuri Shilyaev</dc:creator>
		
		<category><![CDATA[Встречи]]></category>

		<category><![CDATA[Управление проектами]]></category>

		<category><![CDATA[Экономика Agile]]></category>

		<guid isPermaLink="false">http://www.agile.by/?p=329</guid>
		<description><![CDATA[Добрались руки до того, чтобы обработать презентацию для интернета и выложить ее.
Интернет-проект. Откуда берутся и куда деваются деньги.
View more OpenOffice presentations from yshilyaev.

Я рассказывал о том, как мы (я в частности) пришли к принципу управления проектами по Agile и как это положительно сказалось на управлении бюджетом проектов.
Знаете, когда мы запускали работу по agile-процессу в нашем [...]]]></description>
			<content:encoded><![CDATA[<p>Добрались руки до того, чтобы обработать презентацию для интернета и выложить ее.</p>
<div id="__ss_1486821" style="width: 425px; text-align: left;"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" title="Интернет-проект. Откуда берутся и куда деваются деньги." href="http://www.slideshare.net/yshilyaev/-1486821?type=powerpoint">Интернет-проект. Откуда берутся и куда деваются деньги.</a><object width="425" height="355" data="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=314&amp;rel=0&amp;stripped_title=-1486821" type="application/x-shockwave-flash"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=314&amp;rel=0&amp;stripped_title=-1486821" /><param name="allowfullscreen" value="true" /></object></p>
<div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">OpenOffice presentations</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/yshilyaev">yshilyaev</a>.</div>
</div>
<p>Я рассказывал о том, как мы (я в частности) пришли к принципу управления проектами по Agile и как это положительно сказалось на управлении бюджетом проектов.</p>
<p>Знаете, когда мы запускали работу по agile-процессу в нашем флагманском проекте я прочитал для сотрудников пару семинаров. А после одного из них попросил прислать мне их мнения. В одном из мнений говорилось, что мол &#8220;раньше я думал, что agile нужен для того, чтобы разводить клиента на деньги, но сейчас я думаю, что им он реально полезен&#8221;. Странное дело, но некоторые реально считают порочной практикой принцип agile-методики биллить часы ежемесячно даже за работу, которая может быть отвергнута в следующей итерации. При этом не понимая смысла этой гибкости.</p>
<p>В докладе я делал упор на тот факт, что наш заказчик всегда платит за <strong>готовый продукт</strong>. Я даже выделил это красным: <strong><span style="color: #ff0000;">готовый продукт</span></strong>. Эта мысль на самом деле связывает воедино отношения заказчик-разработчик в старую добруб формулу: &#8220;утром деньги - вечером стулья&#8221;. Все предельно честно.</p>
<p><em>Если вы были на конференции и не задали мне вопрос, то самое время сделать это ниже в комментариях.</em></p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/bEMciWiIeww" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/05/26/software-people-2009-prezentaciya.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/05/26/software-people-2009-prezentaciya.html</feedburner:origLink></item>
		<item>
		<title>Ретроспектива</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/O1rMS6j2M8k/retrospektiva.html</link>
		<comments>http://www.agile.by/2009/05/26/retrospektiva.html#comments</comments>
		<pubDate>Tue, 26 May 2009 09:24:58 +0000</pubDate>
		<dc:creator>Dmitry Zdanovich</dc:creator>
		
		<category><![CDATA[Инструменты]]></category>

		<category><![CDATA[Практики Agile]]></category>

		<guid isPermaLink="false">http://www.agile.by/?p=322</guid>
		<description><![CDATA[После Agile Practitioners Gathering я стал более широко воспринимать тему ретроспективы.
Ретроспектива – одна из наиболее игнорируемых практик. Почему же ее не используют? В основном потому, что видят трудности с ее внедрением, но не видят особых преимуществ.
Понятно, что использовать практику, не дающую никакой пользы, нет смысла. Но некоторые практики могут приносить долгосрочную пользу – что не [...]]]></description>
			<content:encoded><![CDATA[<p>После Agile Practitioners Gathering я стал более широко воспринимать тему ретроспективы.</p>
<p>Ретроспектива – одна из наиболее игнорируемых практик. Почему же ее не используют? В основном потому, что видят трудности с ее внедрением, но не видят особых преимуществ.</p>
<p>Понятно, что использовать практику, не дающую никакой пользы, нет смысла. Но некоторые практики могут приносить долгосрочную пользу – что не всегда принимается во внимание.</p>
<p>Очевидные цели ретроспективы:</p>
<ul>
<li>Собрать информацию, получить обратную связь</li>
<li>Что-то улучшить на основе полученной информации</li>
</ul>
<p>Звучит красиво, но на практике это не так легко. Основными проблемами являются:</p>
<ul>
<li>«Бюрократическая» атмосфера, люди не хотя давать реальную информацию, так как это в итоге может превратиться в «охоту на ведьм»</li>
<li>Члены команды не учитывают долговременных плюсов ретроспективы, но очень хорошо замечают кратковременные трудности, и быстро прекращают проводить ретроспективу</li>
<li>В случае неправильной организации, без четких целей ретроспектива не приносит реальной пользы, это пустая трата времени</li>
</ul>
<p>Чтобы немного сгладить впечатление, что ретроспектива это что-то из области теоретической фантастики, приведу некоторые не совсем явные преимущества:</p>
<ul>
<li>Может повысить открытость, так как люди привыкают давать и получать обратную связь</li>
<li>Так как в результате ретроспективы команда получает возможность «подстроить» процесс под себя, то шанс того, что основа процесса будет одинакова для многих проектов в компании (основа та же, отличаются в основном настройки), возрастает</li>
<li>Ретроспектива может помочь улучшить процесс на уровне всей компании</li>
<li>Она помогает адекватно отреагировать на изменения, а не просто игнорировать их</li>
</ul>
<p>В данной статье я в основном остановлюсь на проведении ретроспектив:</p>
<ul>
<li>Преимущества с разных точек зрения</li>
<li>Как проводить</li>
<li>Различные инструменты и подходы</li>
<li>Ретроспектива на более высоком уровне</li>
</ul>
<p><span id="more-322"></span></p>
<h2>Преимущества с различных точек зрения</h2>
<p>С точки зрения компании:</p>
<ul>
<li>Получение информации и обратной связи</li>
<li>Обучение и улучшение</li>
<li>Создание открытой атмосферы (хотя не для всех компаний это преимущество)</li>
<li>Поощрение людей к действию и активности</li>
</ul>
<p>С точки зрения менеджера проекта:</p>
<ul>
<li>Получение информации и обратной связи</li>
<li>Подстройка процесса под проект и команду</li>
<li>Создание открытой атмосферы (опять-таки, не для всех это плюс)</li>
<li>Поощрение людей к действию и активности</li>
</ul>
<p>И, наконец, преимущества с точки зрения команды:</p>
<ul>
<li>Возможность быть услышанным</li>
<li>Подстройка процесса под реальные нужды, устранение лишних вещей</li>
</ul>
<h2>Как проводить</h2>
<p>Для ретроспективы нужна хорошо продуманная организация. Я бы выделил 3 области:</p>
<ul>
<li>Подготовка</li>
<li>Проведение</li>
<li>Реализация решений</li>
</ul>
<h3>Подготовка</h3>
<p>На этом этапе одной из наиболее важных вещей является четкое и понятное объяснение всем, зачем это надо и как это поможет конкретным людям.</p>
<p>Установите четкое расписание для ретроспективы. Проводить ретроспективу не в комнате команды – хорошая идея, так как изменение обстановки позволит взглянуть снаружи на свою деятельность, немного ослабить привычные шаблоны мышления.</p>
<h3>Проведение</h3>
<p>Для  ретроспективы  обязательно  нужен  ведущий (фасилитатор). Это может быть член команды, Scrum master, человек из другой команды или даже профессиональный ведущий. Периодически  можно  менять  фасилитатора.</p>
<p>Ведущему стоит в начале еще раз кратко напомнить про цели ретроспективы, процедуру и ожидаемые результаты. Важно настроить людей на конструктивное взаимодействие, чтобы они были готовы давать обратную связь, анализировать ситуацию и предлагать решения. Например, можно сделать так, чтобы каждый сказал хотя бы несколько слов – первый шаг, как правило, наиболее трудный.</p>
<p>Если это не первая ретроспектива на проекте, то необходимо проанализировать результаты выполнения решений предыдущей ретроспективы – что сделано, что нет, почему. Возможно, некоторые элементы уже неактуальны.</p>
<p>Затем необходимо определить, что работает хорошо, а что является проблемой. После определения проблем предлагаются решения. На практике выявление проблем и решения для них предлагаются часто одновременно.</p>
<p>По итогам составляется action log. Стоит быть реалистичным, и не включать в action log так много элементов, что они заведомо не будет сделаны за следующий спринт.</p>
<p>В результате ретроспективы у нас есть:</p>
<ul>
<li>Список работающих практик</li>
<li>Список проблем</li>
<li>Action log с конкретными действиями и ответственными людьми</li>
</ul>
<h3>Реализация  решений</h3>
<p>Ретроспектива без реальных изменений – это просто трата времени. Action log помогает сконцентрироваться именно на действиях, а не просто на разговорах.</p>
<p>Имеет смысл сделать action log наглядным и заметным. Например, распечатать и повесить в комнате команды. Когда какой-нибудь элемент завершен, можно сразу отмечать это на распечатке (например, перечеркнуть или поставить галочку). Когда команда видит, что что-то реально улучшается, энтузиазм в отношении ретроспективы повышается.</p>
<h2>Различные инструменты и подходы</h2>
<p>Существует большое количество инструментов и форматов для проведения ретроспективы. Рассмотрим только некоторые:</p>
<ul>
<li>What went well/What could be improved</li>
<li>Keep this/Ongoing problems/Try this/</li>
<li>Bug fix analysis/Knowledge sharing/Fix process/Roles/Practices</li>
<li>Starfish</li>
<li>Timeline</li>
</ul>
<h3>What went well/What could be improved</h3>
<p>Это один из самых простых форматов. Вопрос “What went well?” помогает выявить хорошо работающие элементы. А второй вопрос направлен на выявление проблем. Ответами на второй вопрос являются проблемы, но формулировка подчеркивает конструктивный подход.</p>
<h3>Keep this/Ongoing problems/Try this</h3>
<p>Слегка более детализированный формат. Первый вопрос направлен на выявление работающих практик, второй – выявление проблем, а третий предполагает психологически комфортный путь предложить идею по решению проблемы (или просто потенциальный вариант как улучшить работу).</p>
<h3>Starfish</h3>
<p>Этот набор вопросов основан на starfish диаграмме.</p>
<div class="wp-caption alignnone" style="width: 310px"><img title="Starfish diagram" src="http://exploratorydevelopment.com/wp-content/uploads/2009/05/startechnique-300x267.gif" alt="Starfish diagram" width="300" height="267" /><p class="wp-caption-text">Starfish diagram</p></div>
<ul>
<li>Start doing – что нужно начать делать (например, регулярный peer code review)</li>
<li>Stop doing – что нужно прекратить делать (например, собирать бесполезные метрики)</li>
<li>Continue doing – это хорошо работает, нужно сохранить</li>
<li>More – этим вещам нужно уделять больше внимания (времени)</li>
<li>Less – этим вещам нужно уделять меньше внимания (времени)</li>
</ul>
<h3>Bug fix analysis/Knowledge sharing/Fix process/Roles/Practices</h3>
<p>Этот вариант предложил Владимир Лешкевич.</p>
<p>Во время bug fix analysis исследуются допущенные ошибки и как их не повторять. Knowledge sharing – knowledge sharing :-). В рамках фазы Fix process анализируется процесс – убираются или добавляются роли и практики.</p>
<h3>Timeline</h3>
<p>Timeline помогает  построить  ретроспективу  на  реальных  фактах. Timeline – это область на доске (или стене), которая представляет прошедший спринт, и набор стикеров, представляющих произошедшие события. События расположены согласно дате (хотя не обязательно точная привязка). События могут иметь различные цвета – например, в зависимости от последствий (позитивное, негативное, нейтральное), компонента (процесс, код, тестирование и т.д.) или приоритета.</p>
<p>Есть несколько подходов к построению timeline – в течение спринта или в начале ретроспективы. Первый позволяет не забыть события, но второй подход проще.</p>
<p>Борис Лебеда предложил вариант с black box’ом – в комнате команды ставится ящик, в который можно бросать заметки с событиями. На ретроспективе все эти заметки достаются, сортируются, выкидываются малозначительные – и получаем набор фактов.</p>
<h2>Ретроспектива на более высоком уровне</h2>
<p>Рефлексия может быть использована и вне проектных команд. Например, на уровне команд менеджеров проекта или менеджеров по продажам. Многие скажут, что уже проводят регулярные собрания менеджеров. Имхо, это не совсем то – одним из плюсов ретроспективы (хотя название абсолютно не важно) является то, что ее формат позволяет четко концентрироваться на рефлексии, выявлении проблем и улучшении ситуации, а не на текущих задачах.</p>
<p>Можно проводить вертикальную ретроспективу (спасибо Юре Шиляеву за идею), включающую заинтересованных лиц с разных уровней (например, команда + division manager, или менеджеры проектов + несколько разработчиков + division manager + CEO). Это облегчает общение между уровнями. Но стоит учитывать психологический аспект – если команда на уровне «performing», она сможет достаточно эффективно проводить такие ретроспективы, члены менее «зрелой» команды могут просто замолчать проблемы. В случае многоуровневых ретроспектив правильная организация обсуждения еще более важна.</p>
<p>Ретроспективы уровня проекта – это сложная практика. А многоуровневые – еще сложнее. Но эффект достаточно заманчивый: всесторонняя обратная связь, прозрачный обмен информацией между уровнями, общее понимание задач и целей.</p>
<h2>Это долговременный инструмент</h2>
<p>Если команда (или компания) не понимают долговременных плюсов ретроспективы, скорее всего, проведение таких обсуждений закончится достаточно быстро (или хуже того – будут проводиться бесполезные ретроспективы). Но если компания понимает преимущества ретроспективы и может объяснить это сотрудникам (в том числе, как это поможет конкретным людям), ретроспектива может стать чрезвычайно полезным инструментом.</p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/O1rMS6j2M8k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/05/26/retrospektiva.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/05/26/retrospektiva.html</feedburner:origLink></item>
		<item>
		<title>Самый непонимаемый принцип в Agile Manifesto</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/lql_TpTumds/samyj-neponimaemyj-princip-v-agile-manifesto.html</link>
		<comments>http://www.agile.by/2009/05/06/samyj-neponimaemyj-princip-v-agile-manifesto.html#comments</comments>
		<pubDate>Wed, 06 May 2009 12:48:25 +0000</pubDate>
		<dc:creator>Денис Петелин</dc:creator>
		
		<category><![CDATA[Практики Agile]]></category>

		<category><![CDATA[Психология Agile]]></category>

		<guid isPermaLink="false">http://www.agile.by/2009/05/06/samyj-neponimaemyj-princip-v-agile-manifesto.html</guid>
		<description><![CDATA[Вот есть грузовик. Принципиальная схема грузовика проста: есть кузов, который перевозит груз. Перевозка груза происходит потому что к кузову приделаны колеса, которые крутятся и передвигают корпус. Колеса крутятся потому что их вращает двигатель посредством вращающегося вала. Двигатель вращает вал так как в нем сгорает бензин, который при сгорании толкает поршень, который сообщает движение валу. Поэтому [...]]]></description>
			<content:encoded><![CDATA[<p>Вот есть грузовик. Принципиальная схема грузовика проста: есть кузов, который перевозит груз. Перевозка груза происходит потому что к кузову приделаны колеса, которые крутятся и передвигают корпус. Колеса крутятся потому что их вращает двигатель посредством вращающегося вала. Двигатель вращает вал так как в нем сгорает бензин, который при сгорании толкает поршень, который сообщает движение валу. Поэтому бензин сгорает, толкает поршень, колеса крутятся, кузов движется, возникает польза – передвижение груза. Каждая деталь – на своем месте, вместе они образуют концептуальное единство. </p>
<p> <span id="more-317"></span>
<p>&#160;</p>
<p>Никому не приходит в голову сказать “о! классная штука – автомобиль! давайте ее использовать, только мотор выкинем!” или “мысль понятна, но вот про заливание бензина – мне кажется лишнее, он денег стоит, пусть она без бензина едет”. Маразм? Маразм, все понимают. И мастерство водителя здесь совершенно ни при чем – вроде никому в голову не приходит говорить “вот продемонстрируй, какой ты профессиональный водитель – настоящий профессионал должен уметь ездить даже на машине без мотора!” или “настоящий водитель никогда не заправляется!”.</p>
<p>Теперь описываю принципиальную схему agile-проекта. Есть продукт, который производится часто и при релизе имеет пригодный для эксплуатации вид. Его производит команда, которая реализует “хотелки” заказчика, для чего Заказчик каждый день плотно работает с командой. Чтобы темп производства не падал, используются ежедневные собрания, на которых люди говорят “что сделано” и на которых им совестно сказать “ничего не сделано”. Им совестно так сказать потому что они очень хотят выпуска продукта и потому что они уважают коллег, в глазах которых они не желают упасть как профессионалы. Иными словами – профессионалы которые хотят зарелизить продукт собираются каждый день похвастаться друг перед другом успехами в деле выпуска этого продукта через что происходит высокая интенсивность работы над пожеланиями Заказчика который все время находится рядом чтобы направлять команду, и как следствие – мы способны релизить часто, релизить со смыслом и пользой, и добиваться при этом приемлемого качества.&#160; Принципиальная схема думаю понятна. А теперь внимание. </p>
<p>Давайте выкинем нафиг “профессионалов”. А потом выкинем “которые хотят сделать продукт!” То есть давайте выкинем из машины мотор, или давайте не зальем бензина – пусть она так едет! А тренеру этой команды мы скажем “настоящий тренер – он сделает agile-проект даже с людьми которые ненавидят другу друга, никогда не программировали, а проект видали в гробу в белых тапках!” Перечитайте часть про грузовик – ничего не напоминает?</p>
<p><strong>Да, даже в таких условиях проект можно сделать.</strong> Но в такой ситуации не тренинги по аджайлу нужны, а <a href="http://www.youtube.com/watch?v=-TAGNCEHM6g" target="_blank">сержант Хартманн</a>. И никакой аджайл здесь не заработает, я <a href="http://www.agile.by/2009/03/15/menedzher-v-agile-ili-kak-ya-stal-trenerom.html" target="_blank">про это уже писал</a>. Тренинги или не тренинги, fogbugz или rally, subversion или VSS – это совершенно неважно.</p>
<p><strong>Один из 12 принципиальных узлов, из которых построен грузовик agile – projects built around motivated individuals. Это один из принципиальных узлов, это мотор (команда) и топливо (мотивация) грузовика. Нет мотора – грузовик, даже самый совершенный, не тронется с места.</strong></p>
<p>Что сделать, чтобы люди хотели сделать проект? Ответ – думайте. Из своей практики могу сказать, что никто обычно не скрывает от чего в работе он приходит в восторг, а отчего впадает в депрессию. Обычно не требуется ничего сверхъественного для того, чтобы человеку было интересно работать над проектом. У кого-то преобладают социальные мотивы, у кого-то – материальные, и есть растения, которые не хотят ничего – но это не повод не анализировать мотивацию своих коллег.</p>
<p><strong>Потому что одно могу сказать точно – ваш проектный agile-грузовик без мотора и бензина не поедет. Можете убиться веником – но мотор (команда) и бензин (мотивация) нужны.</strong> Нет, можно конечно запрячь в грузовик четверик, но эффективная телега – это совсем другая система, и фирма Caterpillar явно бы не одобрила свой логотип на такой колымаге (так что подумайте прежде чем говорить “мы делаем agile”, ага).</p>
<p>Есть еще такая распространенная байка – “настоящий девелопер самомотивирован” – почему-то в контексте &quot;его можно поставить разгребать любой свинарник”. У каждого осмысленного человека есть мотивация (набор мотивов деятельности) – это факт. Каждый осмысленный человек ищет путей реализации этих мотивов – это факт. </p>
<p>Именно поэтому “самомотивирован” не имеет ничего общего с “согласен делать что угодно” – если предлагаемая деятельность не вяжется с его мотивами, он будет ужасающе непродуктивен в этой деятельности. Именно поэтому он скорее всего не будет это делать, или будет делать это плохо. У меня например внутренняя мотивация – чистое торнадо, но если мне предложат заняться высокоинтеллектуальной деятельностью “вот тебе документ, вставь в него из ста других документов по кусочку, потому что это очень важно для компании” – я точно не приду от этого в восторг, и точно моя продуктивность на этой задаче будет ниже плинтуса.</p>
<p>Это разъяснение я написал чтоб в конце красным сделать вот такое сообщение: <strong><font color="#ff0000">Камрады менеджеры, пока вы не поймете принцип projects built around motivated individuals и не увидите девелоперов, страстно желающих начать ваш проект – не приходите ко мне с просьбами “мои люди не хотят делать agile\проект, и тренинг по agile они не хотят, но надо провести для них тренинг чтоб переубедить!”. Слезно вас прошу – отстаньте! перечитайте текст выше, реализуйте принцип на практике – и тогда они сами попросят у вас тренинг.</font></strong></p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/lql_TpTumds" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/05/06/samyj-neponimaemyj-princip-v-agile-manifesto.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/05/06/samyj-neponimaemyj-princip-v-agile-manifesto.html</feedburner:origLink></item>
		<item>
		<title>15 мая состоится Agile Practitioners Gathering</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/V-qbrKLSbG8/15-maya-sostoitsya-agile-practitioners-gathering.html</link>
		<comments>http://www.agile.by/2009/04/25/15-maya-sostoitsya-agile-practitioners-gathering.html#comments</comments>
		<pubDate>Sat, 25 Apr 2009 08:19:21 +0000</pubDate>
		<dc:creator>Dmitry Zdanovich</dc:creator>
		
		<category><![CDATA[Встречи]]></category>

		<category><![CDATA[Новости]]></category>

		<guid isPermaLink="false">http://www.agile.by/?p=288</guid>
		<description><![CDATA[15 мая, в пятницу, состоится встреча Agile Practitioners Gathering. добавить в мой календарь
Цель
Основная задача - помочь в обмене информацией, опытом, решении существующих проблем и улучшении процесса разработки всем, кто использует гибкую разработку (Scrum мастерам, Agile коучам, членам Agile-команд, руководителям компаний).  
Свое участие уже подтвердил Денис Петелин, основатель Agile сообщества Беларуси.
Программа
Начало в 10:00.
Завершение в 18:00.
В [...]]]></description>
			<content:encoded><![CDATA[<p>15 мая, в пятницу, состоится встреча Agile Practitioners Gathering. <a target="_blank" href="http://www.google.com/calendar/event?action=TEMPLATE&amp;tmeid=NDVwZGI0aTMwdmUwMzN1ODRnNmR0czVsZGMgemRhbm92aWNoQG0&amp;tmsrc=emRhbm92aWNoQGdtYWlsLmNvbQ">добавить в мой календарь</a></p>
<h4>Цель</h4>
<p>Основная задача - помочь в обмене информацией, опытом, решении существующих проблем и улучшении процесса разработки всем, кто использует гибкую разработку (Scrum мастерам, Agile коучам, членам Agile-команд, руководителям компаний).  </p>
<p>Свое участие уже подтвердил Денис Петелин, основатель Agile сообщества Беларуси.</p>
<h4>Программа</h4>
<p>Начало в 10:00.<br />
Завершение в 18:00.</p>
<p>В основном планируются дискуссии в формате open space.</p>
<p><iframe width="600" height="550" frameborder="0" src="http://spreadsheets.google.com/pub?key=pw9msOiof73-Q5Cqu0fjHJA&amp;output=html&amp;gid=0&amp;single=true&amp;widget=true"></iframe><br />
<a href="http://spreadsheets.google.com/pub?key=pw9msOiof73-Q5Cqu0fjHJA">Программа отдельно</a></p>
<h4>Участие</h4>
<p>Участие бесплатное.<br />
<a href="http://spreadsheets.google.com/viewform?formkey=cHc5bXNPaW9mNzNfV1lHN01jN2hrSGc6MA..">Регистрация обязательна</a>, помещение рассчитано на не более чем 25 человек.</p>
<h4>Как добраться</h4>
<p>Московская, 15 (Республиканский институт высшей школы), аудитория 804 - на лифте до 7-го этажа, потом по лестнице до 8, найти аудиторию 804<br />
Это рядом со станцией метро Институт культуры.<br />
Надеюсь, эта карта поможет соориентироваться - <a href="http://www.gorodalive.by/minsk/gis/19960">http://www.gorodalive.by/minsk/gis/19960</a>.</p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/V-qbrKLSbG8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/04/25/15-maya-sostoitsya-agile-practitioners-gathering.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/04/25/15-maya-sostoitsya-agile-practitioners-gathering.html</feedburner:origLink></item>
		<item>
		<title>Весна - еще больше общения! Планируется Agile practitioners gathering</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/n6mzHI51ITE/vesna-eshhe-bolshe-obshheniya-sozdana-google-gruppa-agile-by-planiruetsya-agile-practitioners-gathering.html</link>
		<comments>http://www.agile.by/2009/04/20/vesna-eshhe-bolshe-obshheniya-sozdana-google-gruppa-agile-by-planiruetsya-agile-practitioners-gathering.html#comments</comments>
		<pubDate>Mon, 20 Apr 2009 07:48:38 +0000</pubDate>
		<dc:creator>Dmitry Zdanovich</dc:creator>
		
		<category><![CDATA[Встречи]]></category>

		<category><![CDATA[Новости]]></category>

		<guid isPermaLink="false">http://www.agile.by/?p=297</guid>
		<description><![CDATA[Весна уже пришла! Пора активизироваться  
В ближайшее время планируется начать проводить Agile practitioners gathering. Основная задача - собрать вместе практиков, чтобы можно было пообщаться, обменяться опытом, обсудить реальные проблемы вживую, лицом к лицу. Предполагаемый формат - open space + workshops + discussions, темы генерятся в начале встречи (естесственно, каждый заранее продумывает, что ему хотелось [...]]]></description>
			<content:encoded><![CDATA[<p>Весна уже пришла! Пора активизироваться <img src='http://www.agile.by/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>В ближайшее время планируется начать проводить Agile practitioners gathering. Основная задача - собрать вместе практиков, чтобы можно было пообщаться, обменяться опытом, обсудить реальные проблемы вживую, лицом к лицу. Предполагаемый формат - open space + workshops + discussions, темы генерятся в начале встречи (естесственно, каждый заранее продумывает, что ему хотелось бы обсудить), выбираются наиболее актуальные, далее происходит обсуждение. В дальнейшем будем приглашать практиков из AgileRussia и AgileUkraine, а также профессиональных коучей и консультантов (например, Асхата Уразбаева или Алексея Кривицкого).<br />
Детали первой встречи будут сообщены позже.</p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/n6mzHI51ITE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/04/20/vesna-eshhe-bolshe-obshheniya-sozdana-google-gruppa-agile-by-planiruetsya-agile-practitioners-gathering.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/04/20/vesna-eshhe-bolshe-obshheniya-sozdana-google-gruppa-agile-by-planiruetsya-agile-practitioners-gathering.html</feedburner:origLink></item>
		<item>
		<title>Оценка. Примеры</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/oHKZXWkOqPI/ocenka-primery.html</link>
		<comments>http://www.agile.by/2009/04/15/ocenka-primery.html#comments</comments>
		<pubDate>Wed, 15 Apr 2009 11:40:14 +0000</pubDate>
		<dc:creator>Dmitry Zdanovich</dc:creator>
		
		<category><![CDATA[Жизнь]]></category>

		<category><![CDATA[Управление проектами]]></category>

		<guid isPermaLink="false">http://www.agile.by/?p=291</guid>
		<description><![CDATA[Теория от практики на практике отличается гораздо больше, чем в теории.
После всех теоретических рассуждений о разных способах оценки (смотри Оценка. Часть 1 и Оценка. Часть 2) давайте рассмотрим примеры оценки нескольких гипотетических проектов.
Проект «МегаХ»
Большая система, time &#38; materials. Заказчик за Scrum, но просит изначально оценить примерные затраты и хочет иметь возможность видеть общий прогресс проекта. [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: right;" align="right"><span style="font-size: 8pt;">Теория от практики на практике отличается гораздо больше, чем в теории.</span></p>
<p style="text-align: justify;">После всех теоретических рассуждений о разных способах оценки (смотри <a href="http://www.agile.by/2009/03/05/ocenka-chast-1.html">Оценка. Часть 1</a> и <a href="http://www.agile.by/2009/03/12/ocenka-chast-2.html">Оценка. Часть 2</a>) давайте рассмотрим примеры оценки нескольких гипотетических проектов.</p>
<h3>Проект «МегаХ»</h3>
<p style="text-align: justify;">Большая система, time &amp; materials. Заказчик за Scrum, но просит изначально оценить примерные затраты и хочет иметь возможность видеть общий прогресс проекта. Хороший заказчик.</p>
<p style="text-align: justify;">После обзорного анализа PM определяет состав команды. Так как участники проекта уже известны, то проводить оценку решено всей командой.</p>
<p style="text-align: justify;">Для оценки всего проекта решено выбрать story points. Учитывая свой предыдущий опыт, PM рассказывает команде, почему именно story points и что они дадут (иначе команда будет считать в днях и просто называть их story point). Уф, команда за story points – тем более, что у некоторых уже есть опыт. Проводится небольшой тренинг по оценке.</p>
<p style="text-align: justify;"><span id="more-291"></span>Заказчик хочет Scrum, но не готов писать user stories, хотя согласен быстро отвечать на вопросы и объяснять непонятные моменты. Проблем особых нет – PM становится Proxy Product Owner и с помощью заказчика пишет истории.</p>
<p style="text-align: justify;">Истории написаны и согласованы с заказчиком. Ок, можно приступать к оценке.</p>
<p style="text-align: justify;">За несколько дней оценили все истории (использовали poker planning), прояснили оставшиеся неясные моменты, набросали начальную архитектуру. По согласованию с заказчиком добавили несколько новых историй.</p>
<p style="text-align: justify;">Story points есть, как оценить примерные затраты? Выбрали 5 user stories, каждый индивидуально оценил в днях. Посчитали, сколько стоит средний story point. Сказали заказчику, предварительно объяснив, что это достаточно примерная оценка. Его устраивает. Команду тоже.</p>
<p style="text-align: justify;">Как оценивать задачи в спринте? Решили использовать инженерные часы. В коэффициент ушли тесты, code review, исправление ошибок, стандартный оптимизм команды, перерывы. Для начала взяли коэффициент 2 (т.е. 4 инженерных часа = 8 реальных).</p>
<p style="text-align: justify;">На основе velocity (которая в story points) выбираем историй немного больше, чем мы обычно успеваем сделать за спринт. Каждую историю сначала разбиваем на задачи. Когда все истории разбиты (и уже более-менее понятно, что и как делать), начинается непосредственно оценка. Как обычно, используется poker planning. Если оценки сильно отличаются, то те, кто положил самую маленькую и самую большую оценку, рассказывают, какие подводные камни или очень простые решения они видят. После этого проводится еще один раунд poker planning. Как правило, третьего раунда нет, так как уже на втором раунде оценки в целом одинаковы.</p>
<p style="text-align: justify;">Все, для каждой задачи есть оценка. Считаем, сколько всего нужно инженерных часов для каждой истории. Считаем, сколько инженерных часов мы успеем сделать в этом спринте: количество «производительных» дней (количество дней в спринте – время на планирование – время на рефакторинг (если рефакторинг не в коэффициенте) – время на подготовку билда) * 8 / коэффициент. Добавляем истории (в порядке приоритета), пока суммарная оценка меньше, чем общее количество инженерных часов для этого спринта.</p>
<p style="text-align: justify;">Истории выбраны, команда готова их сделать за этот спринт. Делаем.</p>
<p style="text-align: justify;">После каждого спринта пересчитывается velocity в story points, и соответственно, общая продолжительность проекта (так как мы знаем, сколько еще story points нам надо сделать, зная скорость, можем узнать время). Через некоторое время заметили, что скорость увеличивается. Приятно. Заказчик доволен.</p>
<p style="text-align: justify;">После нескольких попыток изменять базовый коэффициент для инженерных часов стало понятно, что особого смысла это не имеет – если не успели сделать запланированное в предыдущем спринте, то в следующем команда автоматически делала более пессимистические оценки. А если при этом еще и коэффициент становится более пессимистичным, то попадаем в другую крайность. Поэтому зафиксировали 2 как значение для коэффициента.</p>
<p style="text-align: justify;">Закончили проект успешно, даже немного быстрее, чем изначально планировали. Команда довольна. Заказчик в восторге – уже работает над требованиями для нового проекта, который планирует отдать нам.</p>
<h3>Проект «Fixed»</h3>
<p style="text-align: justify;">Небольшое приложение. Из особенностей – заказчик хочет и изменять требования, и иметь fixed price проект. Уже есть история успешной работы с этим заказчиком, так что обговариваются правила – небольшие изменения делаем сразу, большие – убираем какое-то другое равноценное по затратам на реализацию требование.</p>
<p style="text-align: justify;">Заказчик не готов писать user stories (хотя уже имеет опыт работы со Scrum проектами). Ок, PM пишет user stories и согласовывает с заказчиком.</p>
<p style="text-align: justify;">Состав команды уже ясен, так что в оценке принимает участие вся команда. Решено использовать для оценки реальные дни. Для каждой истории дается 3 оценки – в лучшем случае, скорее всего, в худшем случае. Оценили. PM какими-то магическими манипуляциями (что загадочное делал с рисками, какими-то коэффициентами для процесса и не мог это внятно объяснить) выдает итоговую оценку. После небольшого обдумывания команда соглашается, что она готова сделать проект за это время.</p>
<p style="text-align: justify;">Согласования с заказчиком. Контракт подписан.</p>
<p style="text-align: justify;">Для оценки спринта использовали инженерные часы и poker planning.</p>
<p style="text-align: justify;">Как впоследствии оказалось, PM не зря шаманил с рисками. Но в итоге проект сделали вовремя и в соответствии с требованиями заказчика (требования менялись, но благодаря начальному соглашению о правилах изменения, общее время оставалось почти неизменным).</span></p>
<h3>Проект «Конь и вакуум»</h3>
<p style="text-align: justify;">Государственный тендер. Сколько вам надо, чтобы решить нашу задачу, которую мы еще не знаем? Требования, чтобы оценить проект? Нет, ТЗ только после подписания контракта. Да, и мы еще хотим иметь возможность вносить изменения.</p>
<p style="text-align: justify;">Приехали.</p>
<p style="text-align: justify;">Анализируем. Вроде представляем область проекта. Есть люди. Но уж очень рискованные условия. Наводим справки. Ага, по отзывам, со стороны госорганизации соображающий человек, представляющий всю сложность ситуации. После беседы с ним выясняется, что они согласны изначально ограничить объем изменений какими-то рамками и правилами. Заодно выясняется немного больше о самом проекте.</p>
<p style="text-align: justify;">Много думаем. Решили взяться.</p>
<p style="text-align: justify;">User stories какие-то уж очень большие и расплывчатые (понятно, что их писать пришлось самим). Оценку решили делать в неделях, так как требования все еще не до конца понятны, Полную команду не собирали – только потенциальные PM и tech lead. Использовали подход 3 оценок. Оценили. Опять загадочные манипуляции PM’a с цифрами. В этот раз итоговая оценка больше отличается от простой суммы оценок. Начали подозревать, что за действиями PM’a что-то есть.</p>
<p style="text-align: justify;">Выиграли тендер. Собрали команду.</p>
<p style="text-align: justify;">Для спринта использовали стандартную схему (инженерные часы + poker planning).</p>
<p style="text-align: justify;">В итоге проект сделали. Анализируя, поняли, что если бы изначально попытались все определить, то были бы большие проблемы – несмотря на то, что человек со стороны госорганизации был очень толковым, требования все-таки менялись. Но мы-то были готовы к изменениям.</p>
<p style="text-align: justify;">Все довольны.</p>
<h3>Inspect and adapt</h3>
<p style="text-align: justify;">Как видите, для разных типов проектов (и команд) подходят разные способы и единциы оценки. Поэтому не стоит зацикливаться на одном способе только потому, что он хорошо работал на двух предыдущих проектах. Анализируйте и выбирайте наиболее подходящий вариант для каждого конкретного случая.</p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/oHKZXWkOqPI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/04/15/ocenka-primery.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/04/15/ocenka-primery.html</feedburner:origLink></item>
		<item>
		<title>Software People 2009</title>
		<link>http://feedproxy.google.com/~r/agilebelarus/~3/YlMc_4Kc8eE/software-people-2009.html</link>
		<comments>http://www.agile.by/2009/04/05/software-people-2009.html#comments</comments>
		<pubDate>Sun, 05 Apr 2009 13:55:23 +0000</pubDate>
		<dc:creator>Сплоченная редакция</dc:creator>
		
		<category><![CDATA[Новости]]></category>

		<category><![CDATA[конференция]]></category>

		<guid isPermaLink="false">http://www.agile.by/2009/04/05/software-people-2009.html</guid>
		<description><![CDATA[
Уважаемые коллеги, с удовольствием представляем вам очередное интересное событие.  1–22 мая 2009 года в Выставочном центр «Инфопространство», г. Москва пройдет Международная конференция Software People 2009, которая объединит на своих площадках профессионалов в области управления процессом разработки программных продуктов из России, Белоруссии, Украины, СНГ и других стран мира.
Software People 2009 – это лучшие мировые практики, передовые [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://softwarepeople.ru"><img style="border: 0pt none; margin: 0px 5px 0px 0px; display: inline;" title="Software People Logo" src="http://agilesummer.org/images/SoftwarePeople2009_ED0B/image_thumb.png" border="0" alt="image" width="178" height="65" align="left" /></a></p>
<p>Уважаемые коллеги, с удовольствием представляем вам очередное интересное событие.  <strong>1–22 мая 2009 года</strong> в Выставочном центр «Инфопространство», г. Москва пройдет Международная конференция Software People 2009, которая объединит на своих площадках профессионалов в области управления процессом разработки программных продуктов из России, Белоруссии, Украины, СНГ и других стран мира.</p>
<p>Software People 2009 – это лучшие мировые практики, передовые технологии, уникальные возможности для общения, обмена опытом и развития деловых отношений.</p>
<p>Software People 2009 — это свыше 300 участников, 60 докладчиков, самые актуальные темы в пленарных сессиях и самые острые вопросы и дискуссии круглых столов, вечерние мастер-классы и семинары Гуру, телемост с участниками Software Engineering Forum 2009 (г. Минск), <a href="http://www.online.careerlab.ru">online-трансляция в Интернете</a>, выставка и разнообразная программа дополнительных мероприятий.</p>
<p>Те, кто хочет выступить с докладами, особенно на agile-тематику – <a href="http://www.softwarepeople.ru/speakers/" target="_blank">приглашаются особо</a>.</p>
<img src="http://feeds.feedburner.com/~r/agilebelarus/~4/YlMc_4Kc8eE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.agile.by/2009/04/05/software-people-2009.html/feed</wfw:commentRss>
		<feedburner:origLink>http://www.agile.by/2009/04/05/software-people-2009.html</feedburner:origLink></item>
	</channel>
</rss>
