<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>XP Injection</title>
	<atom:link href="http://xpinjection.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://xpinjection.com</link>
	<description>Inject Agile practices for project health</description>
	<lastBuildDate>Fri, 03 Feb 2012 11:26:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Надвигается Selenium Camp 2012!</title>
		<link>http://xpinjection.com/2012/02/01/selenium-camp-2012-is-coming/</link>
		<comments>http://xpinjection.com/2012/02/01/selenium-camp-2012-is-coming/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 12:35:52 +0000</pubDate>
		<dc:creator>Николай Алименков</dc:creator>
				<category><![CDATA[Общие]]></category>
		<category><![CDATA[selenium]]></category>
		<category><![CDATA[Selenium Camp]]></category>
		<category><![CDATA[конференция]]></category>
		<category><![CDATA[тестирование]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1723</guid>
		<description><![CDATA[Осталось меньше месяца до проведения масштабного мероприятия, целиком посвященного продукту для тестирования web-приложений Selenium. Конференция Selenium Camp 2012 пройдет в Киеве 25 февраля. Кроме того, что это прекрасный повод пообщаться с коллегами, Selenium Camp будет интересен как отличная стартовая точка для тех, кто только задумывается о применении Selenium, а также для профессионалов, использующих его долгое время. <a href="http://xpinjection.com/2012/02/01/selenium-camp-2012-is-coming/" class="more-link">More &#62;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img class="article-left" src="http://seleniumcamp.com/wp-content/uploads/banner_285_160.gif " alt="Selenium Camp 2012" /></p>
<p>Осталось меньше месяца до проведения масштабного мероприятия, целиком посвященного продукту для тестирования web-приложений <a href="http://seleniumhq.org/">Selenium</a>. Конференция <a href="http://seleniumcamp.com/">Selenium Camp 2012</a> пройдет в Киеве <strong>25 февраля</strong>. Кроме того, что это прекрасный повод пообщаться с коллегами, Selenium Camp будет интересен как отличная стартовая точка для тех, кто только задумывается о применении Selenium, а также для профессионалов, использующих его долгое время.</p>
<p>Уже зарегистрировано более <strong>250 участников</strong> из разных городов Украины, России, Беларуси и Сербии. <a href="http://seleniumcamp.com/2012/01/20/participants-statistics-2012/">Состав участников</a> очень интересный и конференция станет отличной площадкой для обмена опытом и знаниями. </p>
<p><a href="http://seleniumcamp.com/program">Программа конференции</a> на финальной стадии формирования и организаторы приготовили приятные сюрпризы. Выступления будут проходить параллельно на <strong>3-ех сценах</strong>. Участники смогут посетить около <strong>20 докладов</strong>. Помимо сильного состава докладчиков из СНГ, Selenium Camp посетят иностранные гости. </p>
<p>Первым принял предложение выступить <a href="http://seleniumcamp.com/speakers/#burns">David Burns</a>. David &#8211; опытный разработчик тестов в Mozilla, один из разработчиков WebDriver, отвечает за Python драйвер, активно ведет блог <a href="http://www.theautomatedtester.co.uk/">theautomatedtester.co.uk</a> и является автором книги <a href="http://www.amazon.com/Selenium-1-0-Testing-Tools-Beginners/dp/1849510261">«Selenium 1.0 Testing Tools: Beginner’s Guide»</a>.</p>
<p>Следующий докладчик является разработчиком сразу двух инструментов: Selenium/WebDriver и Watir. Это <a href="http://seleniumcamp.com/speakers/#bakken">Jari Bakken</a>. Jari создал проект <a href="http://github.com/watir/watir-webdriver">watir-webdriver</a>, где объединил эти два инструмента. На данный момент он работает инженером по тестированию в компании <a href="http://finn.no/">FINN.no</a>, где занимается автоматизацией тестирования и инфраструктурой для тестирования.</p>
<p><a href="http://seleniumcamp.com/speakers/#badle">Samit Badle</a> также дал согласие выступить на конференции в этом году. Это еще один член команды разработки Selenium/WebDriver. Он также является автором многих плагинов для Selenium IDE и ведет свой блог о Selenium &#8211; <a href="http://blog.reallysimplethoughts.com/">blog.reallysimplethoughts.com</a>.</p>
<p>Еще один гость из далекого зарубежья - <a href="http://seleniumcamp.com/speakers/#kovalenko">Dmitriy Kovalenko</a>. Дима за 8 лет в тестировании успел поработать во многих известных компаниях: Rosetta Stone Inc., ThoughtWorks, Centro, Groupon. Последние 2 года он работает в сфере DevOps. Имеет большой опыт работы с Selenium и делится им в своем блоге <a href="http://agilesoftwaretesting.com/">agilesoftwaretesting.com</a>.</p>
<p>В преддверие конференции, <strong>24 февраля</strong>, пройдет <a href="http://seleniumcamp.com/program/">образовательный день</a>. В этот день будут проводиться <strong>тренинги</strong> и <strong>мастер-классы</strong> для различного уровня участников. Более <strong>50 человек</strong> примут участие в образовательной программе в этот день. Вы имеете уникальную возможность поучиться у профессионалов в области автоматизации тестирования с использованием Selenium.</p>
<p>Уже определено место проведения конференции &#8211; это конференц-залы <a href="http://seleniumcamp.com/place">бизнес-центра «Парус»</a>. Помимо наличия комфортных залов для проведения мероприятия, бизнес-центр очень удачно расположен в самом центре Киева. Адрес бизнес-центра: <strong>ул. Мечникова 2а</strong>. Схему проезда и ближайшие транспортные маршруты можно посмотреть <a href="http://maps.yandex.ru/?ol=biz&amp;oid=1005148660">на карте</a> или найти на <a href="http://www.parus.biz/index.php">официальном сайте</a>.</p>
<p>Напоминаем, что с <strong>1 февраля</strong> начался последний этап <a href="http://seleniumcamp.com/registration">регистрации</a>, который продлится до <strong>20 февраля</strong>. Если вы еще не приняли решение об участии, то самое время это сделать. Присоединяйтесь, будет интересно!</p>
<div class="shr-publisher-1723"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F02%2F01%2Fselenium-camp-2012-is-coming%2F' data-shr_title='%D0%9D%D0%B0%D0%B4%D0%B2%D0%B8%D0%B3%D0%B0%D0%B5%D1%82%D1%81%D1%8F+Selenium+Camp+2012%21'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F02%2F01%2Fselenium-camp-2012-is-coming%2F' data-shr_title='%D0%9D%D0%B0%D0%B4%D0%B2%D0%B8%D0%B3%D0%B0%D0%B5%D1%82%D1%81%D1%8F+Selenium+Camp+2012%21'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F02%2F01%2Fselenium-camp-2012-is-coming%2F' data-shr_title='%D0%9D%D0%B0%D0%B4%D0%B2%D0%B8%D0%B3%D0%B0%D0%B5%D1%82%D1%81%D1%8F+Selenium+Camp+2012%21'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F02%2F01%2Fselenium-camp-2012-is-coming%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1723" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/02/01/selenium-camp-2012-is-coming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Стоимость качества. Часть 3 – Как это посчитать?</title>
		<link>http://xpinjection.com/2012/01/30/quality-cost-part-3-how-to/</link>
		<comments>http://xpinjection.com/2012/01/30/quality-cost-part-3-how-to/#comments</comments>
		<pubDate>Mon, 30 Jan 2012 21:47:46 +0000</pubDate>
		<dc:creator>Сергей Поволяшко</dc:creator>
				<category><![CDATA[Полезное чтиво]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[COPQ]]></category>
		<category><![CDATA[COQ]]></category>
		<category><![CDATA[качество]]></category>
		<category><![CDATA[процесс]]></category>
		<category><![CDATA[стоимость качества]]></category>
		<category><![CDATA[тестирование]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1704</guid>
		<description><![CDATA[Завершая серию статей о стоимости качества подходим к практической части, а именно, как это посчитать? Для того, чтобы были конкретные данные, на основании которых можно было бы принимать какие-либо управленческие решения. Напомню о предыдущих статьях и для начала рекомендую их прочесть: «Стоимость качества. Часть 1 – Что это такое?», «Стоимость качества. Часть 2.1 – Зачем <a href="http://xpinjection.com/2012/01/30/quality-cost-part-3-how-to/" class="more-link">More &#62;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Завершая серию статей о стоимости качества подходим к практической части, а именно, как это посчитать? Для того, чтобы были конкретные данные, на основании которых можно было бы принимать какие-либо управленческие решения. Напомню о предыдущих статьях и для начала рекомендую их прочесть: «<a href="http://xpinjection.com/2012/01/10/quality-cost-part-1-what-is-it/" target="_self">Стоимость качества. Часть 1 – Что это такое?</a>», «<a href="http://xpinjection.com/2012/01/18/quality-cost-part-2-1-why-is-it/" target="_self">Стоимость качества. Часть 2.1 – Зачем это надо?</a>», «<a href="http://xpinjection.com/2012/01/23/quality-cost-part-2-2-who-needs-it/" target="_self">Стоимость качества. Часть 2.2 – Кому это надо?</a>».</p>
<p>Так как сбор и интерпретация данных относится к дисциплине <a href="http://xpinjection.com/trainings/metrics/" target="_self">метрик</a>, то здесь стоит обратить внимание на классический треугольник успешности и полезности измерений:</p>
<ul>
<li><strong>Люди</strong> – должны быть обучены данной дисциплине, по крайней мере понимать зачем все это. И, естественно, должны иметь возможность (санкционированное время, желание, инструментарий и т.п.)</li>
<li><strong>Процессы</strong> – должны быть. Все рабочие процессы, например: как мы готовим тестовую документацию и тестируем, жизненный цикл дефекта, жизненный цикл задач и т.п. должны быть в том или ином виде описаны-оговорены и донесены до исполнителей</li>
<li><strong>Инструментарий</strong> – собственно те технические средства, которые помогают людям делать их процессы – тайм трекеры, баг трекеры, таск трекеры и т.п. Именно они, при корректной интеграции в процессы работы и при соответствующей настройке, позволяют и собирать данные, и обрабатывать, и презентовать.</li>
</ul>
<p>В этой статье поговорим именно об инструментарии.</p>
<p>Для начала обратимся к такой дисциплине как Scope Management – управление объемом работ по проекту. В первую очередь это правило 100%, т.е. список работ по проекту должен отражать абсолютно ВСЕ работы и им должно быть место в расписании работ, плановые и фактические трудозатраты по ним должны быть оценены и отрапортованы. ВСЕ – в т.ч. инспекции документов, устранение дефектов, совещания, и даже участие в интервью по набору персонала на проект…</p>
<p>Хорошо помогают шаблоны списков работ (WBS – work breakdown structure).</p>
<p>Ключевым моментом является такая декомпозиция списка работ, где были бы выделены отдельные задачи (берем для примера разработчика), и, соответственно временнАя отчетность на:</p>
<ul>
<li>Инспекцию спецификаций (COQ)</li>
<li>Разработку архитектуры</li>
<li>Юнит тесты (COQ)</li>
<li>Кодирование</li>
<li>Инспекцию кода (COQ)</li>
<li>Устранение дефектов после тестирования (COPQ)</li>
<li>Разворачивание продукта в тестовом окружении</li>
<li>Устранение дефектов по гарантийным обязательствам (COPQ)</li>
<li>Устранение дефектов после инспекции кода (COPQ)</li>
<li>И т.п.</li>
</ul>
<p>В скобках указаны интересующие нас категории – COQ, COPQ. На самом деле, отнесение некоторых задач в какую-то категорию – это ваше решение, например, юнит тесты можно отнести и в разработку. Общие же рекомендации что есть что приведены в первой статье «<a href="http://xpinjection.com/2012/01/10/quality-cost-part-1-what-is-it/" target="_self">Стоимость качества. Часть 1 – Что это такое?</a>».</p>
<p>Как далеко идти с декомпозицией – решать вам в зависимости от того, что нужно и что вообще имеет смысл. Например, устранение дефектов после тестирования можно отнести как в общую для всех разработчиков задачу «Устранение дефектов», так и разделять, например, по модулям – «Устранение дефектов по модулю №1» и т.д.</p>
<p>Таким образом, если у вас есть такие компоненты:</p>
<ul>
<li>Корректная декомпозиция работ</li>
<li>Таск-тайм трекер, который позволяет отразить и декомпозицию, и отчетность о затраченном времени</li>
<li>Обучающие меры для сотрудников – как пользоваться таск-тайм трекером</li>
</ul>
<p>То сбор данных по соответствующим категориям у вас настроен, и что немаловажно, интегрирован в рабочие процессы. И вы легко можете получать информацию о стоимости качества.</p>
<p>Конечно же, возникают некоторые тонкости в организации и процессов работы, и инструментария. Давайте посмотрим на примеры.</p>
<p><strong>Что такое дефект и как его учитывать?</strong> Обычно, если тестировщик находит дефект, то он (дефект) попадает в систему управления дефектами как отдельная запись с описанием, серьезностью и другими параметрами. Но ведь дефекты, найденные, например, на инспекции кода, по существу, ничем не отличаются от дефектов, найденных тестировщиком. И они обычно никак не учитываются, в лучшем случае фиксируется время, потраченное на инспекцию кода. Но возникает резонный вопрос – а зачем это надо вообще? Если уж вы решили определять стоимость качества, то нужно, как минимум фиксировать время на инспекцию кода и время на исправление дефектов, найденных при инспекции. Если вам это не нужно – то не делайте, это будет пустая трата времени и раздражающий фактор для сотрудников. Если вы хотите таки фиксировать не только время на инспекцию, то можно осторожно попробовать использовать систему управления дефектами – например на каждый факт инспекции внести одну запись, к которой приложить список дефектов в коде. По крайней мере необходимость исправить код не потеряется и у вас будут данные о результатах инспекции.</p>
<p><strong>Интенсивная работа с требованиями.</strong> А что если требования обсуждаются настолько интерактивно между заказчиком, аналитиком, разработчиками, тестировщиками, что четкая разница между формализацией требований, их инспекцией (обсуждениями) и устранением дефектов (рекомендации, выданные при обсуждениях) не видна? Или же не имеет смысла это разделять. Тут, наверное, лучший вариант – без фанатизма, просто отнести такой вариант работы в задачу «Разработка требований», т.е. к COQ или COPQ не относить вообще. Если же такого интерактива нет, а есть четкое разделение на формализацию, инспекции, и исправление дефектов, и, внимание!, вам действительно надо выделять COQ и COPQ, то предлагаю такой же подход, как и в предыдущем примере – с использованием системы управления дефектами.</p>
<p>Завершая цикл хочу сказать, что серьезно «заводиться» со стоимостью качества и метриками стоит лишь в том случае, если у вас есть:</p>
<ul>
<li>Великая цель – зачем это делать и кому от этого будет лучше</li>
<li>Подготовка по теме – как это работает</li>
<li>Здравый смысл – в разумной реализации Великой цели</li>
</ul>
<p>Надеюсь, что это было вам полезно.</p>
<p><em>Оригинал статьи </em><em><a href="http://it-tuning.com/?p=1153" target="_blank">здесь</a></em><em>.</em></p>
<p><span> </span></p>
<div class="shr-publisher-1704"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F30%2Fquality-cost-part-3-how-to%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+3+%E2%80%93+%D0%9A%D0%B0%D0%BA+%D1%8D%D1%82%D0%BE+%D0%BF%D0%BE%D1%81%D1%87%D0%B8%D1%82%D0%B0%D1%82%D1%8C%3F'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F30%2Fquality-cost-part-3-how-to%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+3+%E2%80%93+%D0%9A%D0%B0%D0%BA+%D1%8D%D1%82%D0%BE+%D0%BF%D0%BE%D1%81%D1%87%D0%B8%D1%82%D0%B0%D1%82%D1%8C%3F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F30%2Fquality-cost-part-3-how-to%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+3+%E2%80%93+%D0%9A%D0%B0%D0%BA+%D1%8D%D1%82%D0%BE+%D0%BF%D0%BE%D1%81%D1%87%D0%B8%D1%82%D0%B0%D1%82%D1%8C%3F'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F30%2Fquality-cost-part-3-how-to%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1704" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/30/quality-cost-part-3-how-to/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Рубрика «Полезное чтиво». Выпуск 20</title>
		<link>http://xpinjection.com/2012/01/30/useful-reading-volume-20/</link>
		<comments>http://xpinjection.com/2012/01/30/useful-reading-volume-20/#comments</comments>
		<pubDate>Mon, 30 Jan 2012 10:44:45 +0000</pubDate>
		<dc:creator>Николай Алименков</dc:creator>
				<category><![CDATA[Полезное чтиво]]></category>
		<category><![CDATA[полезное чтиво]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1713</guid>
		<description><![CDATA[Пролетела очередная неделя и юбилейный 20-ый выпуск рубрики «Полезное чтиво» ждет вас: Is Programming Less Exciting Today? &#8211; все в мире IT идет по кругу и становится скучно Is Documentation Really Wasted Effort? &#8211; правильный ход мыслей, но не совсем правильные действия по поводу документации в Agile The Right Amount of Up-Front Design? &#8211; какое <a href="http://xpinjection.com/2012/01/30/useful-reading-volume-20/" class="more-link">More &#62;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img class="article-right" src="/images/articles/useful-reading-20.jpg" alt="полезное чтиво" /></p>
<p>Пролетела очередная неделя и юбилейный 20-ый выпуск рубрики «Полезное чтиво» ждет вас:</p>
<ul>
<li><a href="http://java.dzone.com/articles/programming-less-exciting">Is Programming Less Exciting Today?</a> &#8211; все в мире IT идет по кругу и становится скучно</li>
<li><a href="http://scrumalliance.org/articles/391-is-documentation-really-wasted-effort">Is Documentation Really Wasted Effort?</a> &#8211; правильный ход мыслей, но не совсем правильные действия по поводу документации в Agile</li>
<li><a href="http://java.dzone.com/articles/right-amount-front-design">The Right Amount of Up-Front Design?</a> &#8211; какое количество дизайна на будущее приемлемо?</li>
<li><a href="http://blogs.versionone.com/agile_management/2012/01/26/musical-approach-agile-development-part/">A Musical Approach to Agile Development Teams – Part 1 of 2</a> &#8211; с кем уже только не сравнивали Agile команду, на этот раз с джаз-группой</li>
<li><a href="http://dou.ua/columns/road-to-hell/">Простой путь</a> &#8211; простенькая статья про оценки с кучей обсуждений</li>
<li><a href="http://blog.xebia.com/2012/01/25/one-practice-a-day/">One practice a day…</a> &#8211; чтобы Agile работал для вас, нужно изменить мышление, а не просто взять и делать набор практик</li>
<li><a href="http://java.dzone.com/articles/sonar-and-gradle-multi-module">Sonar and Gradle Multi-Module Projects</a> &#8211; если Gradle так хорош, почему так все непросто с ним интегрируется?</li>
<li><a href="http://java.dzone.com/articles/are-you-boy-scout-coder">Are you a boy scout coder?</a> &#8211; когда работает правило бойскаута</li>
<li><a href="http://gojko.net/2012/01/23/splitting-user-stories-the-hamburger-method/">Splitting user stories: the hamburger method</a> &#8211; взяли slicing development и обозвали гамбургером</li>
<li><a href="http://java.dzone.com/articles/understanding-java-references">Understanding Java References</a> &#8211; Java Reference является очень полезной концепцией для кешей</li>
<li><a href="http://java.dzone.com/articles/clean-software-approach-life">The &laquo;Clean Software&raquo; Approach To Life</a> &#8211; концепции &laquo;чистого кода&raquo; стоит применять и к собственной жизни</li>
<li><a href="http://java.dzone.com/articles/java-hotspot-vm-virtual">Java HotSpot VM (Virtual Machine) Performance Tuning: Command-line options</a> &#8211; обзор опций для тюнинга JVM</li>
<li><a href="http://java.dzone.com/articles/write-through-cache">Write Through Cache</a> &#8211; как кеш может помочь вашей архитектуре</li>
<li><a href="http://java.dzone.com/articles/sensible-java-build-tool">A Sensible Java Build Tool</a> &#8211; полезные советы по Maven в комментариях</li>
<li><a href="http://www.methodsandtools.com/archive/scrumburndown.php">Understanding the Scrum Burndown Chart</a> &#8211; Burndown Chart является одним из самых важных инструментов в Scrum и его надо очень хорошо понимать</li>
</ul>
<p>Интересное видео:</p>
<ul>
<li><a href="http://xpdays.com.ua/materials/">Материалы конференции XP Days Ukraine</a> &#8211; опубликованы все видеозаписи докладов с конференции <a href="http://xpdays.com.ua/">XP Days Ukraine</a></li>
<li><a href="http://video.yandex.ua/users/xpinjection/view/88/#hq">&laquo;GFS&raquo;</a> &#8211; доклад Алексея Орешко с седьмой встречи &laquo;Клуба анонимных разработчиков&raquo;</li>
</ul>
<p>Читайте и набирайтесь новых знаний!</p>
<div class="shr-publisher-1713"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F30%2Fuseful-reading-volume-20%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+20'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F30%2Fuseful-reading-volume-20%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+20'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F30%2Fuseful-reading-volume-20%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+20'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F30%2Fuseful-reading-volume-20%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1713" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/30/useful-reading-volume-20/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Мы провели свой первый Coding Dojo в Украине!</title>
		<link>http://xpinjection.com/2012/01/26/our-first-coding-dojo-in-ukraine/</link>
		<comments>http://xpinjection.com/2012/01/26/our-first-coding-dojo-in-ukraine/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 09:40:02 +0000</pubDate>
		<dc:creator>Николай Алименков</dc:creator>
				<category><![CDATA[Общие]]></category>
		<category><![CDATA[coding dojo]]></category>
		<category><![CDATA[клуб анонимных разработчиков]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1700</guid>
		<description><![CDATA[В рамках 11-ой встречи &#171;Клуба анонимных разработчиков&#187; мы провели свой первый Coding Dojo в Украине. Впервые Coding Dojo сессию в Киеве провел Johannes Brodwall, которого мы пригласили выступить на конференции XP Days Ukraine. Нам очень понравился данный формат и мы захотели начать проводить подобные встречи в рамках клуба. Johannes составил подробную инструкцию по проведению, которая <a href="http://xpinjection.com/2012/01/26/our-first-coding-dojo-in-ukraine/" class="more-link">More &#62;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>В рамках <a href="/2012/01/07/eleven-developers-club-gathering/">11-ой встречи</a> &laquo;Клуба анонимных разработчиков&raquo; мы провели свой первый <strong>Coding Dojo</strong> в Украине. Впервые Coding Dojo сессию в Киеве провел <a href="https://twitter.com/#!/jhannes">Johannes Brodwall</a>, которого мы пригласили выступить на конференции <a href="http://xpdays.com.ua">XP Days Ukraine</a>. Нам очень понравился данный формат и мы захотели начать проводить подобные встречи в рамках клуба. Johannes составил <a href="http://johannesbrodwall.com/2011/12/18/how-to-start-a-coding-dojo/">подробную инструкцию</a> по проведению, которая очень сильно нам в этом помогла. </p>
<p>Это был интересный опыт и для нас и для участников. На встречу пришло 14 разработчиков, вооружившись ноутбуками с настроенной средой для разработки. Мы сформировали 7 пар, потому что встреча была посвящена теме <strong>парного программирования</strong> и <strong>TDD</strong>. Пары собирались программировать на Java и .NET.</p>
<p>Началось все с небольшой теоретической части. Мы рассказали о принципах парного программирования, его достоинствах и нюансах. После этого продемонстрировали участникам на простеньком примере как работает <strong>пинг-понг</strong> сессия парного программирования. И пришла очередь практики&#8230;</p>
<p>Первое задание было в стиле тренировочного <strong>&laquo;ката&raquo;</strong>. Участники должны были в паре решить несложную математическую задачку &#8211; разложить число на простые делители. При этом они обязаны были использовать технику TDD, работая в паре по принципу <strong>пинг-понг</strong>. Сначала один участник пишет падающий тест и передает клавиатуру другому. Тот реализует код, чтобы тест проходил и пишет следующий падающий тест. Это задание стало настоящей проверкой на знание языка, потому что делать его нужно было в <a href="http://cyber-dojo.com/">специальной платформе</a>, которая не имеет возможностей современных IDE. Данный факт некоторых участников поставил в тупик. <img src='http://xpinjection.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Но в итоге практически все справились с заданием и можно было переходить к самому интересному. </p>
<p>На втором этапе участникам предстояло посоревноваться между собой. Тут уже не было никаких ограничений на стиль и подход к разработке. Можно было работать одному, но мы настоятельно рекомендовали делать это в парах. Суть соревнования заключалась в том, что участники должны были отвечать на вопросы, задаваемые сервером. За правильные ответы им начислялись баллы, за неправильные ответы баллы снимались. Побеждал тот, кто набрал больше всех баллов. Участники могли делать что угодно. Каждый выбирал свою собственную стратегию. В результате, около двух часов команды отчаянно сражались между собой. Они постоянно видели перед собой на экране свою текущую позицию в рейтинге, кто еще больше добавляло давления.</p>
<p>В соревновании была обыграна очень жизненная ситуация: у вас нет времени на рефакторинг, на тесты, на построение классного дизайна и прочие активности. Вам надо выдавать результат. Тем не менее, через какое-то время вы начинаете осознавать, что без всего перечисленного вы просто заходите в тупик и не можете больше выдавать результат со стабильной скоростью. Пример очень поучительный и, надеемся, многих заставил задуматься. </p>
<p>В результате жесткой борьбы первое место вырвала команда в составе Виталика Тимчишина и Тараса Свирского. Второе место занял единственный участник, который работал один &#8211; Марат Юлдашев. Он отстал всего на 30 очков на последней минуте и очень удивил всех своей производительностью. Третье место заняли Александр Белецкий и Сергей Калинец. Мы поздравляем победителей! Но остальные команды тоже молодцы &#8211; все боролись до последнего и борьба за остальные места шла до последней минуты.</p>
<p>Мы искренне верим, что все получили море &laquo;фана&raquo; от данной встречи и много чему научились. Вот небольшой фотоотчет с места событий:</p>
<p><embed type="application/x-shockwave-flash" src="https://picasaweb.google.com/s/c/bin/slideshow.swf" width="600" height="400" flashvars="host=picasaweb.google.com&#038;hl=en_US&#038;feat=flashalbum&#038;RGB=0x000000&#038;feed=https%3A%2F%2Fpicasaweb.google.com%2Fdata%2Ffeed%2Fapi%2Fuser%2Faleksey.solntsev%2Falbumid%2F5701664543281375137%3Falt%3Drss%26kind%3Dphoto%26hl%3Den_US" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></p>
<p>Следующая <a href="/2012/01/20/twelve-developers-club-gathering-wp7/">встреча клуба</a> пройдет <strong>7 февраля</strong> на тему разработки под <strong>Windows Phone 7</strong>.</p>
<div class="shr-publisher-1700"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F26%2Four-first-coding-dojo-in-ukraine%2F' data-shr_title='%D0%9C%D1%8B+%D0%BF%D1%80%D0%BE%D0%B2%D0%B5%D0%BB%D0%B8+%D1%81%D0%B2%D0%BE%D0%B9+%D0%BF%D0%B5%D1%80%D0%B2%D1%8B%D0%B9+Coding+Dojo+%D0%B2+%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B5%21'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F26%2Four-first-coding-dojo-in-ukraine%2F' data-shr_title='%D0%9C%D1%8B+%D0%BF%D1%80%D0%BE%D0%B2%D0%B5%D0%BB%D0%B8+%D1%81%D0%B2%D0%BE%D0%B9+%D0%BF%D0%B5%D1%80%D0%B2%D1%8B%D0%B9+Coding+Dojo+%D0%B2+%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B5%21'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F26%2Four-first-coding-dojo-in-ukraine%2F' data-shr_title='%D0%9C%D1%8B+%D0%BF%D1%80%D0%BE%D0%B2%D0%B5%D0%BB%D0%B8+%D1%81%D0%B2%D0%BE%D0%B9+%D0%BF%D0%B5%D1%80%D0%B2%D1%8B%D0%B9+Coding+Dojo+%D0%B2+%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B5%21'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F26%2Four-first-coding-dojo-in-ukraine%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1700" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/26/our-first-coding-dojo-in-ukraine/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Рубрика «Полезное чтиво». Выпуск 19</title>
		<link>http://xpinjection.com/2012/01/24/useful-reading-volume-19/</link>
		<comments>http://xpinjection.com/2012/01/24/useful-reading-volume-19/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 10:19:54 +0000</pubDate>
		<dc:creator>Николай Алименков</dc:creator>
				<category><![CDATA[Полезное чтиво]]></category>
		<category><![CDATA[полезное чтиво]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1697</guid>
		<description><![CDATA[Да, сегодня уже не понедельник и вчера рубрика не вышла. Тем не менее, вы не останетесь без очередной порции полезного &#171;чтива&#187; на неделю: Hibernate Cache. Практика &#8211; практические советы по работе с Hibernate Cache Which Integration Framework Should You Use – Spring Integration, Mule ESB or Apache Camel? &#8211; сравнительный анализ Spring Integration, Mule ESB <a href="http://xpinjection.com/2012/01/24/useful-reading-volume-19/" class="more-link">More &#62;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img class="article-right" src="/images/articles/useful-reading-19.jpg" alt="полезное чтиво" /></p>
<p>Да, сегодня уже не понедельник и вчера рубрика не вышла. <img src='http://xpinjection.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Тем не менее, вы не останетесь без очередной порции полезного &laquo;чтива&raquo; на неделю:</p>
<ul>
<li><a href="http://habrahabr.ru/blogs/java/136375/">Hibernate Cache. Практика</a> &#8211; практические советы по работе с Hibernate Cache</li>
<li><a href="http://java.dzone.com/articles/which-integration-framework">Which Integration Framework Should You Use – Spring Integration, Mule ESB or Apache Camel?</a> &#8211; сравнительный анализ Spring Integration, Mule ESB и Apache Camel</li>
<li><a href="http://habrahabr.ru/blogs/java/136466/">JMock и EasyMock: сравнение и howto в примерах и не только</a> &#8211; хороший сравнительный анализ JMock и EasyMock</li>
<li><a href="http://server.dzone.com/articles/why-devops-doomed-ops-teams">Why DevOps is Doomed! Ops teams are lost! (1 of 3)</a> &#8211; разработчики и админы должны жить в единении</li>
<li><a href="http://java.dzone.com/articles/jumping-mysql-cassandra">Jumping from MySQL to Cassandra: A Success Story</a> &#8211; кто-то вот перепрыгнул с MySQL на Cassandra и по дороге библиотечку написал</li>
<li><a href="http://habrahabr.ru/blogs/nosql/136305/">Недопонимание CAP-теоремы</a> &#8211; обсуждение правдивости CAP-теоремы в комментариях</li>
<li><a href="http://www.implementingscrum.com/2012/01/18/modifying-scrum-you-think-you-know-better/">Modifying Scrum – You THINK you know better…</a> &#8211; вторая половина бед от того, что люди изменяют процессы, когда те выявляют им проблемы, и даже не разбираются</li>
<li><a href="http://scrumalliance.org/articles/386-a-sprint-is-not-a-mini-waterfall">A Sprint is Not a Mini Waterfall</a> &#8211; самая распространенная ошибка в применении Agile подходов у тех, кто считает итерацию мини-waterfall, отсюда половина бед</li>
<li><a href="http://www.infoq.com/news/2012/01/hibernate-4-released">JBoss Releases Hibernate 4.0</a> &#8211; вышел Hibernate 4.0 и практически ничего нового</li>
<li><a href="http://habrahabr.ru/blogs/code_review/136469/">Code Review и теория вероятностей</a> &#8211; забавное применение теории вероятности к Code Review</li>
<li><a href="http://www.projecttimes.com/articles/seven-crucial-steps-to-effective-project-risk-management.html">Seven Crucial Steps to Effective Project Risk Management</a> &#8211; 7 шагов к эффективному управлению рисками на проекте</li>
<li><a href="http://sonar-user.15.n6.nabble.com/ANN-Sonar-2-13-td3705552.html">Sonar 2.13</a> &#8211; вышла новая версия Sonar 2.13</li>
<li><a href="http://www.infoq.com/minibooks/priming-kanban-jesper-boeg">Priming Kanban</a> &#8211; классная книга по Kanban (пожалуй даже лучше чем у Книберга)</li>
<li><a href="http://java.dzone.com/articles/how-many-hours-can-programmer">How Many Hours Can a Programmer Program?</a> &#8211; индус клево прошелся по &laquo;стартапщикам&raquo; на тему сколько должен работать программист</li>
<li><a href="http://alexeybulat.blogspot.com/2012/01/blog-post.html">Дипломатия или решаем проблемы грамотно</a> &#8211; притча о тестировании</li>
<li><a href="http://blog.reallysimplethoughts.com/2012/01/16/page-coverage-v1-0-for-selenium-ide-now-available/">Page Coverage v1.0 for Selenium IDE Now Available</a> &#8211; в Selenium IDE уже можно мерять покрытие тестами элементов страниц</li>
<li><a href="http://habrahabr.ru/blogs/java/135176/">Hibernate cache</a> &#8211; о кешировании в Hibernate: не везде верно, мало, но на русском</li>
</ul>
<p>Интересное видео:</p>
<ul>
<li><a href="http://xpdays.com.ua/materials/">Материалы конференции XP Days Ukraine</a> &#8211; опубликованы видеозаписи докладов с двух сцен конференции <a href="http://xpdays.com.ua/">XP Days Ukraine</a></li>
<li><a href="http://www.infoq.com/presentations/Spring-MVC-3-1-Update">Spring MVC 3.1 Update</a> &#8211; новинки Spring MVC 3.1</li>
<li><a href="http://www.infoq.com/presentations/Concurrent-Caching-at-Google">Concurrent Caching at Google</a> &#8211; про Google Guava библиотеку для Java</li>
<li><a href="https://www.destroyallsoftware.com/talks/wat">WAT</a> &#8211; смешное видео о конфузах в языках программирования</li>
</ul>
<p>Читайте и набирайтесь новых знаний!</p>
<div class="shr-publisher-1697"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F24%2Fuseful-reading-volume-19%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+19'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F24%2Fuseful-reading-volume-19%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+19'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F24%2Fuseful-reading-volume-19%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+19'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F24%2Fuseful-reading-volume-19%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1697" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/24/useful-reading-volume-19/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Стоимость качества. Часть 2.2 – Кому это надо?</title>
		<link>http://xpinjection.com/2012/01/23/quality-cost-part-2-2-who-needs-it/</link>
		<comments>http://xpinjection.com/2012/01/23/quality-cost-part-2-2-who-needs-it/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 10:35:14 +0000</pubDate>
		<dc:creator>Сергей Поволяшко</dc:creator>
				<category><![CDATA[Полезное чтиво]]></category>
		<category><![CDATA[Статьи]]></category>
		<category><![CDATA[COPQ]]></category>
		<category><![CDATA[COQ]]></category>
		<category><![CDATA[качество]]></category>
		<category><![CDATA[стоимость качества]]></category>
		<category><![CDATA[тестирование]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1690</guid>
		<description><![CDATA[Продолжаю серию статей о стоимости качества. Две предыдущие: «Стоимость качества. Часть 1 – Что это такое?» и «Стоимость качества. Часть 2.1 – Зачем это надо?». В этой же статье рассмотрим «Кому это надо?». Очень рекомендую обратить внимание на предыдущие статьи, т.к. они представляют собой логическую цепочку рассуждений.

Здесь рассмотрим, в каких ситуациях следует (или не следует) озаботиться стоимостью качества и относительной величиной его доли в общем объеме работ. Давайте рассмотрим несколько вариантов...]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Продолжаю серию статей о стоимости качества. Две предыдущие: <a href="http://xpinjection.com/2012/01/10/quality-cost-part-1-what-is-it/" target="_self">«Стоимость качества. Часть 1 – Что это такое?»</a> и <a href="http://xpinjection.com/2012/01/18/quality-cost-part-2-1-why-is-it/" target="_self">«Стоимость качества. Часть 2.1 – Зачем это надо?»</a>. В этой же статье рассмотрим «Кому это надо?». Очень рекомендую обратить внимание на предыдущие статьи, т.к. они представляют собой логическую цепочку рассуждений.</p>
<p>Здесь рассмотрим, в каких ситуациях следует (или не следует) озаботиться стоимостью качества и относительной величиной его доли в общем объеме работ. Давайте рассмотрим несколько вариантов. Но для начала вспомним классическую диаграмму стоимости изменений (Cost of Change), но будем ее понимать в контексте стоимости устранения дефектов, т.к. график по своей сути не меняется.</p>
<p><img class="aligncenter size-full wp-image-1142" src="http://it-tuning.com/wp-content/uploads/2012/01/coq5.jpg" alt="Cost of Change/Defect" width="636" height="336" /></p>
<p>Смысл в том, что чем дальше мы продвигаемся по времени, тем дороже обходится устранение дефектов. Например, если не удалось выявить несоответствие в требованиях вначале (что на самом деле очень дешево сделать), то потом скорее всего придется «перепедаливать» на значительно бОльшую сумму.</p>
<p>Представленный ниже список вариантов далеко не исчерпывающий, рассмотренные ситуации и выводы по ним в вашей деятельности могут отличаться от приведенных ниже. А также могут быть и комбинации этих вариантов.</p>
<p><strong>Вариант 1. Проект типа </strong><strong>Fixed Price.</strong></p>
<p>Соответственно, и скорее всего, помимо бюджета четко зафиксированы объем работ и сроки. Здесь нужно в первую очередь обращать внимание на требования и критерии приемки. Оставим в стороне дискуссию о возможной неполноте и изменчивости требований, о применимости этого типа контракта, это регулируется другими механизмами. Здесь становиться очевидным, что нужно стараться минимизировать COPQ, т.к. это напрямую влияет на доход и, возможно, на штрафные санкции, и-или на расходы по гарантийным обязательствам. Но с другой стороны минимизация COPQ выражается в увеличении COQ, и тут тоже нужно не переусердствовать. На помощь приходит вышеуказанная диаграмма «Стоимость устранения дефектов». Напрашивается вывод, что имеет смысл уделить особое внимание процедурам из COQ как можно раньше. А именно – постановке процессов обеспечения качества и реализации мер контроля (инспекции спецификаций, архитектуры, кода, тестовой документации и т.п.). См. подробности в статье <a href="http://xpinjection.com/2012/01/10/quality-cost-part-1-what-is-it/" target="_self">«Стоимость качества. Часть 1 – Что это такое?»</a>. Стоимость процедур COQ легко считается и планируется, и также легко соотносится со штрафными санкциями.</p>
<p><span style="text-decoration: underline">Кому это надо?</span> Компании Исполнителю, т.к. это ее доход и репутация. Говоря о процедурах из COQ, то немного бОльший фокус должен быть на эти меры на начальных стадиях, т.к. последствия от их неприменения скорее всего аукнутся относительно бОльшими расходами на COPQ.</p>
<p><strong>Вариант 2. Служба поддержки (или любая деятельность, которая по своей сути не есть проектом, а есть повседневной операционной деятельностью, или для простоты &#8211; конвейером).</strong></p>
<p>Этот вариант является просто идеальной почвой для «экспериментов» по выявлению наилучшего соотношения COQ, COPQ и собственно стоимости предоставления услуг. Путем внедрения улучшений можно определить какой процесс и какое соотношение COQ и COPQ способствует наилучшему соотношению стоимости, количества и качества результатов деятельности. Под COPQ в этом случае подразумеваются переделки из-за некорректного выполнения запроса на поддержку.</p>
<p><span style="text-decoration: underline">Кому это надо?</span> Компании Исполнителю для снижения расходов и увеличения удовлетворенности пользователей, клиентов. Но опять же, тогда, когда есть явные проблемы. Если все всех устраивает, то нужно ли что-то менять или считать?</p>
<p><strong>Вариант 3. Проект или долгосрочное партнерство по контракту типа </strong><strong>Cost Reimbursable</strong><strong>.</strong></p>
<p>Контракт Cost Reimbursable предполагает что Заказчик оплачивает исполнителю его расходы плюс прибыль. Есть несколько разновидностей. Не вдаваясь в подробности, это хорошо подходит для долгосрочного outstaffing, в основном по разработке, развитию или поддержке больших продуктов. Здесь особенность в том, что Исполнитель не очень заинтересован сокращать свои расходы, т.к. на каждый доллар расходов он получает некий % прибыли. И если у Заказчика нет жестких требований к процессам работы, то так или иначе это расслабляет Исполнителя. И этот «расслабон» по традиции уменьшает усилия, входящие в COQ и увеличивает COPQ. В таком типе взаимоотношений Заказчик обычно имеет гораздо бОльший контроль над процессами и в принятии решений, чем в Fixed Price. Поэтому…</p>
<p><span style="text-decoration: underline">Кому это надо?</span> Я бы сказал 50-50 и Заказчику и Исполнителю. Заказчику – для снижения своих расходов и увеличения производительности Исполнителя. Исполнителю – для поддержания репутации и, как результат для сохранения взаимоотношений. Причем, в силу долгосрочности отношений, это также является благодатной почвой для улучшений и оценки их эффективности.</p>
<p><strong>Вариант 4. Деятельность или продукт для систем класса </strong><strong>life critical </strong><strong>или </strong><strong>mission critical</strong><strong>.</strong></p>
<p>Здесь, очевидно, доля COQ будет (и должна быть) очень высока, причем все ее аспекты, а особенно превентивная составляющая. И она может легко превышать и собственно долю разработки и долю COPQ. Обычно только достаточно зрелые компании могут обеспечить выполнение процедур, из которых состоит COQ.</p>
<p><span style="text-decoration: underline">Кому это надо?</span> И Заказчику и Исполнителю, причем для обоих фокус скорее не в снижении расходов, или в скорости работы, а в качестве (надежности) таких систем.</p>
<p><strong>Вариант 5. Пилотные проекты с целью развития бизнеса.</strong></p>
<p>Здесь могут быть какие угодно варианты о том, что важно или нужно. От «слепить» что-то побыстрее, до демонстрации зрелости процессов работы. Также играет роль бизнес перспектива, Исполнитель легко может сработать себе в убыток, чтобы заполучить «вкусного» заказчика. Говоря о COQ и COPQ для этого варианта, и основываясь на собственном опыте скажу, что это вариант очень похож на mission critical. Но есть и отличия. К COPQ здесь можно, без преувеличения, прибавить стоимость упущенной возможности, т.е. потенциальную сумму контракта (если вы потеряли потенциального заказчика именно из-за плохого качества «пилота»).</p>
<p><span style="text-decoration: underline">Кому это надо?</span> Однозначно Исполнителю. По-моему, пилотные проекты «вкусного» класса должны рассматриваться как mission critical, с особым вниманием процедурам из COQ.</p>
<p><strong>Вариант 6. Качество устраивает.</strong></p>
<p>В своей деятельности сталкивался с ситуациями, когда заказчик совершенно осознанно диктовал условия по занижению COQ по причине бюджетного ограничения. А именно, или исключались некоторые процедуры по контролю качества, и-или была явно недостаточная пропорция разработчиков или тестировщиков. Заказчику нужно было «напедалить» как можно больше. Причем Заказчик совершенно осознавал к чему это приведет, и его совершенно устраивало то среднее качество, которое он получал. К счастью, такие заказчики были достаточно технически развиты и адекватны.</p>
<p><span style="text-decoration: underline">Кому это надо?</span> В этом случае больше Заказчику, т.к. он совершенно осознает что делает и отдает себе отчет о результатах.</p>
<div> </div>
<div> </div>
<p>В итоге, чтобы понимать, кто и в каких ситуациях заинтересован в улучшениях, затрагивающих соотношение затрат на COQ, COPQ и разработку продукта (и процедуры входящие в них), нужно проанализировать среду обитания проекта, деятельности. Надеюсь, что приведенные выше варианты прояснили как это можно сделать.</p>
<p>Просьба не воспринимать буквально следующие цифры, это скорее относительные взаимоотношения доли COQ и COPQ в общей стоимости проекта, деятельности. Приведу по тем вариантам, где есть опытные данные.</p>
<ul>
<li>Вариант 1. COQ + COPQ – 40-50% от общей стоимости</li>
<li>Вариант 3. COQ + COPQ – 30-40% от общей стоимости</li>
<li>Вариент 4. Опытных данных нет, но осмелюсь предположить что COQ + COPQ – 50-80% от общей стоимости</li>
<li>Вариант 5. COQ + COPQ – 40-60% от общей стоимости</li>
<li>Вариант 6. COQ + COPQ – 20-30% от общей стоимости, но из COQ + COPQ бОльшая доля принадлежит COPQ</li>
</ul>
<p> </p>
<p>В следующей статье «Стоимость качества. Часть 3 – Как это посчитать?» поговорим о практических вопросах сбора и интерпретации данных для подсчета COQ + COPQ.<span> </span></p>
<div class="shr-publisher-1690"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F23%2Fquality-cost-part-2-2-who-needs-it%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+2.2+%E2%80%93+%D0%9A%D0%BE%D0%BC%D1%83+%D1%8D%D1%82%D0%BE+%D0%BD%D0%B0%D0%B4%D0%BE%3F'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F23%2Fquality-cost-part-2-2-who-needs-it%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+2.2+%E2%80%93+%D0%9A%D0%BE%D0%BC%D1%83+%D1%8D%D1%82%D0%BE+%D0%BD%D0%B0%D0%B4%D0%BE%3F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F23%2Fquality-cost-part-2-2-who-needs-it%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+2.2+%E2%80%93+%D0%9A%D0%BE%D0%BC%D1%83+%D1%8D%D1%82%D0%BE+%D0%BD%D0%B0%D0%B4%D0%BE%3F'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F23%2Fquality-cost-part-2-2-who-needs-it%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1690" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/23/quality-cost-part-2-2-who-needs-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Мы открываем серию встреч на тему Windows Phone 7</title>
		<link>http://xpinjection.com/2012/01/20/twelve-developers-club-gathering-wp7/</link>
		<comments>http://xpinjection.com/2012/01/20/twelve-developers-club-gathering-wp7/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 22:52:15 +0000</pubDate>
		<dc:creator>Николай Алименков</dc:creator>
				<category><![CDATA[Общие]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[windows phone 7]]></category>
		<category><![CDATA[wp7rocks]]></category>
		<category><![CDATA[клуб анонимных разработчиков]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1685</guid>
		<description><![CDATA[Не успела состояться 11-ая встреча &#171;Клуба анонимных разработчиков&#187;, запланированная на 24 января, как мы решили анонсировать 12-ую. Эта встреча откроет серию встреч на тему Windows Phone 7. Все встречи данной серии будут проходить в сотрудничестве с порталом Windows Phone 7 Rocks. Это отличная новость для всех .NET-чиков и .NET-чиц Киева, потому что у вас появилась <a href="http://xpinjection.com/2012/01/20/twelve-developers-club-gathering-wp7/" class="more-link">More &#62;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Не успела состояться <a href="/2012/01/07/eleven-developers-club-gathering/">11-ая встреча</a> &laquo;Клуба анонимных разработчиков&raquo;, запланированная на <strong>24 января</strong>, как мы решили анонсировать 12-ую. Эта встреча откроет серию встреч на тему Windows Phone 7. Все встречи данной серии будут проходить в сотрудничестве с порталом <a href="http://www.wp7rocks.com/">Windows Phone 7 Rocks</a>. Это отличная новость для всех .NET-чиков и .NET-чиц Киева, потому что у вас появилась замечательная возможность послушать и поучиться у профессионалов в этой области, которых не так уж много. И все это в рамках формата &laquo;Клуба анонимных разработчиков&raquo; с непринужденной обстановкой и отличной атмосферой.</p>
<p>На этой встрече будет два доклада. С первым выступит <strong>Михаил Галушко</strong> &#8211; автор статей на сайте <a href="http://www.wp7rocks.com/">Windows Phone 7 Rocks</a>. Михаил начал изучать технологию Windows Phone с момента ее появления на свет. На данный момент уже опубликовал несколько приложений. Имеет сертификаты MCPD .NET 3.5 и 4.0, а также является активным членом технического сообщества. Он представит членам клуба доклад <strong>&laquo;Хранение данных в Windows Phone&raquo;</strong>. Он будет посвящен вопросам работы с данными в Windows Phone приложениях. Будут рассмотрены возможные варианты хранилищ, сравнение их возможностей и рекомендации по выбору того или иного решения.</p>
<p>Второй докладчик является автором и идеологом сайтов <a href="http://www.wp7rocks.com/">Windows Phone 7 Rocks</a> и <a href="http://msug.vn.ua">Microsoft User Group Community</a>. Это <strong>Александр Краковецкий</strong>. Он начал изучать платформу, начиная с Preview версии. В данный момент является автором нескольких приложений. Кроме этого он Microsoft Regional Director, Microsoft и Tekerik MVP, кандидат технических наук по информационным технологиям, автор публикаций на многих технических порталах и активный член технического сообщества. На встрече Александр представит доклад <strong>&laquo;А вы уже были в Metro?&raquo;</strong>. В докладе пойдет речь о новом языке дизайна Metro, который используется для разработки интерфейсов в Windows Phone 7, а также будущей версии Windows 8. Также в докладе на примерах будут показаны типичные ошибки при проектирование мобильных приложений.</p>
<p>Встреча действительно обещает получиться очень интересной &#8211; ведь ребятам с их опытом есть что рассказать. При интересе со стороны членов клуба мы будем дальше расширять это направление. Итак, встреча пройдет <strong>7 февраля</strong>. Место проведения мы объявим ближе к дате мероприятия. Это связано с тем, кто число членов клуба постоянно растет и мы рискуем не влезть в уютный Киевский офис компании <a href="http://www.dataart.ru/contacts/kiev.htm">DataArt</a>. Этот офис полюбился членам клуба своей уютной обстановкой и наличием всего необходимого для продуктивного общения. Но, по итогам прошлых встреч, есть риск, что все желающие не поместятся.</p>
<p>Официальное начало встречи по-прежнему в <strong>19:00</strong>, завершение в <strong>23:00</strong>. Стоимость участия <strong>80 гривен</strong> при оплате заранее, <strong>120 гривен</strong> при оплате на месте. <strong>Пива</strong>, <strong>пиццы</strong> и <strong>кофе с печеньками</strong> хватит на всех. <a href="https://docs.google.com/spreadsheet/viewform?formkey=dEpaTkVIOG1meE4zX25rR01NdkxWd0E6MA">Регистрация</a> обязательна. Все детали по оплате будут высланы вам после успешного прохождения <a href="https://docs.google.com/spreadsheet/viewform?formkey=dEpaTkVIOG1meE4zX25rR01NdkxWd0E6MA">регистрации</a>. Количество мест ограничено <strong>60 участниками</strong>.</p>
<div class="shr-publisher-1685"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F20%2Ftwelve-developers-club-gathering-wp7%2F' data-shr_title='%D0%9C%D1%8B+%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D0%B2%D0%B0%D0%B5%D0%BC+%D1%81%D0%B5%D1%80%D0%B8%D1%8E+%D0%B2%D1%81%D1%82%D1%80%D0%B5%D1%87+%D0%BD%D0%B0+%D1%82%D0%B5%D0%BC%D1%83+Windows+Phone+7'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F20%2Ftwelve-developers-club-gathering-wp7%2F' data-shr_title='%D0%9C%D1%8B+%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D0%B2%D0%B0%D0%B5%D0%BC+%D1%81%D0%B5%D1%80%D0%B8%D1%8E+%D0%B2%D1%81%D1%82%D1%80%D0%B5%D1%87+%D0%BD%D0%B0+%D1%82%D0%B5%D0%BC%D1%83+Windows+Phone+7'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F20%2Ftwelve-developers-club-gathering-wp7%2F' data-shr_title='%D0%9C%D1%8B+%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D0%B2%D0%B0%D0%B5%D0%BC+%D1%81%D0%B5%D1%80%D0%B8%D1%8E+%D0%B2%D1%81%D1%82%D1%80%D0%B5%D1%87+%D0%BD%D0%B0+%D1%82%D0%B5%D0%BC%D1%83+Windows+Phone+7'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F20%2Ftwelve-developers-club-gathering-wp7%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1685" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/20/twelve-developers-club-gathering-wp7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Стоимость качества. Часть 2.1 – Зачем это надо?</title>
		<link>http://xpinjection.com/2012/01/18/quality-cost-part-2-1-why-is-it/</link>
		<comments>http://xpinjection.com/2012/01/18/quality-cost-part-2-1-why-is-it/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 06:56:43 +0000</pubDate>
		<dc:creator>Сергей Поволяшко</dc:creator>
				<category><![CDATA[Статьи]]></category>
		<category><![CDATA[COPQ]]></category>
		<category><![CDATA[COQ]]></category>
		<category><![CDATA[качество]]></category>
		<category><![CDATA[стоимость качества]]></category>
		<category><![CDATA[тестирование]]></category>
		<category><![CDATA[улучшения]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1676</guid>
		<description><![CDATA[Продолжаю тему «Стоимость качества», начало было в предыдущей статье «Стоимость качества. Часть 1 – Что это такое?». Здесь выскажу некоторые соображения о том, зачем и когда нам вообще нужно беспокоиться о стоимости качества и качестве как таковом, а также какая польза от того, что мы его можем определить. Под качеством здесь понимается не только качество конечного и промежуточных результатов работы, но и качество инженерных и управленческих практик, принимаемых решений.

Наиболее очевидны ситуации, когда что-то явно идет не так и нужно как-то реагировать. В общих чертах это типичные проблемы со сроками, качеством, бюджетом, а соответственно недовольные заказчик, руководство, команда проекта. Реагировать – значить что-то менять, улучшать, и в большинстве случаев это что-то – рабочие процессы или какие-то организационные моменты.]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Продолжаю тему «Стоимость качества», начало было в предыдущей статье «<a href="http://xpinjection.com/2012/01/10/quality-cost-part-1-what-is-it/" target="_self">Стоимость качества. Часть 1 – Что это такое?</a>». Здесь выскажу некоторые соображения о том, зачем и когда нам вообще нужно беспокоиться о стоимости качества и качестве как таковом, а также какая польза от того, что мы его можем определить. Под качеством здесь понимается не только качество конечного и промежуточных результатов работы, но и качество инженерных и управленческих практик, принимаемых решений.</p>
<p>Наиболее очевидны ситуации, когда что-то явно идет не так и нужно как-то реагировать. В общих чертах это типичные проблемы со сроками, качеством, бюджетом, а соответственно недовольные заказчик, руководство, команда проекта. Реагировать – значить что-то менять, улучшать, и в большинстве случаев это что-то – рабочие процессы или какие-то организационные моменты.</p>
<p>Но, возникают вопросы:</p>
<ul>
<li>Как доказать и убедиться, что улучшение полезно, для кого или чего именно?</li>
<li>Как понять, чьим интересам улучшение соответствует, или не соответствует?</li>
</ul>
<p><em>Небольшое отступление, скорее всего есть инициатор такого изменения, и скорее всего есть участники проекта, с которыми нужно согласовать (доказать целесообразность) внедрение этого изменения и/или получить их разрешение. Ну а убедиться, что изменение помогло нужно наверное всем в нем участвующим.</em></p>
<p>Основные согласующие-разрешающие участники это заказчик и руководство, они хорошо понимают язык денег и производительности, т.е. количество пригодных результатов, произведенных проектной командой за эти деньги. Соответственно на этом языке и будем стараться говорить далее.</p>
<p><em>Еще одно необходимое отступление – по поводу производительности. Это некоторое количество работы в единицу времени. Количество работы «по научному» &#8211; размер (size). Наиболее понятный пример – Velocity (Story Points per Sprint), где Story Point – одна единица размера. Это конечно не идеальный способ, но все же существенно лучше чем человеко-часы. Или же, за единицу размера могут приниматься какие-то дискретные виды работ (например, разработка стандартного баннера). Тема размера – это отдельная довольно серьезная дисциплина, по этому поводу есть небольшая ознакомительная </em><a href="http://it-tuning.com/?p=589" target="_self"><em>статья</em></a><em>, а более полный комплект доступен </em><a href="http://it-tuning.com/?page_id=764" target="_self"><em>здесь</em></a><em> (за подписку).</em></p>
<p>Для плавного перехода к практическому применению давайте сначала для наглядности посмотрим на следующие диаграммы, иллюстрирующие потенциальное влияние изменений. Предположим, что у нас работает стабильная по составу команда, и за последнее время в среднем соотношение затрат между видами работ такое (из спринта в спринт, из месяца в месяц и т.п.). Где «Создание продукта» &#8211; это все что не «Total Quality Costs – TQC» (см.<a href="http://xpinjection.com/2012/01/10/quality-cost-part-1-what-is-it/" target="_self"> Часть 1</a>), т.е. кодирование, требования и т.п.</p>
<p><span style="text-decoration: underline">Соотношение №1</span></p>
<p>Исходная ситуация. Соотношения приводятся только в демонстрационных целях, у вас могут быть иные.</p>
<p><img class="aligncenter size-full wp-image-1112" src="http://it-tuning.com/wp-content/uploads/2012/01/coq1.jpg" alt="Cost of Quality" width="332" height="233" /></p>
<p>Предположим, что кого-то такая ситуация не устраивает, то ли по стоимости, то ли по производительности, то ли по качеству.</p>
<p>Решили что следующие улучшения могут быть наиболее полезными:</p>
<ul>
<li>ввести инспекцию спецификаций,</li>
<li>или же добавить нагрузочное тестирование,</li>
<li>или же ввести инструментарий прослеживаемости (traceability) требований</li>
</ul>
<p>Пусть это будут Соотношения №№2-4 соответственно. И пусть они для простоты будут внедряться независимо, по-одному. Рассмотрим потенциальные варианты.</p>
<p><span style="text-decoration: underline">Соотношение №2</span></p>
<p>Инспекция спецификаций помогла, она, как часть COQ (+5%), помогла существенно сократить COPQ (-10%), высвободив ресурсы. Причем, высвобождение может пойти либо на увеличение производительности (Соотношение №2), либо на экономию средств (Соотношение №2.1).</p>
<p><img class="aligncenter size-full wp-image-1114" src="http://it-tuning.com/wp-content/uploads/2012/01/coq2.jpg" alt="Cost of Quality" width="324" height="233" /></p>
<p><img class="aligncenter size-full wp-image-1115" src="http://it-tuning.com/wp-content/uploads/2012/01/coq21.jpg" alt="Cost of Quality" width="325" height="232" /></p>
<p><span style="text-decoration: underline">Соотношение №3</span></p>
<p>Введение нагрузочного тестирования, очевидно, не помогло &#8211; производительность команды понизилась (-5%), т.к. время на него тратится, а COQ повысился (+5%). Заметим, что проверка достижения запланированной нагрузки на приложение тоже входит в TQC, а дефекты, вызванные, якобы, нагрузочными проблемами, таковыми не оказались. Значит, «копали не туда».</p>
<p><img class="aligncenter size-full wp-image-1116" src="http://it-tuning.com/wp-content/uploads/2012/01/coq3.jpg" alt="Cost ofQuality" width="320" height="233" /></p>
<p><span style="text-decoration: underline">Соотношение №4</span></p>
<p>Внедрение инструментария traceability (+5% COQ) на первый взгляд, не сказалось ни на производительности, ни на экономии средств. Но снизило COPQ (-5%), что можно рассматривать как позитивное явление, т.к. часть дефектов всегда просачивается заказчику, а их меньшее количество вообще означает и меньшее их обнаружение заказчиком, что, как минимум, носит положительный репутационный характер.</p>
<p><img class="aligncenter size-full wp-image-1117" src="http://it-tuning.com/wp-content/uploads/2012/01/coq4.jpg" alt="Cost of Quality" width="326" height="234" /></p>
<p>Из этих рассуждений, а также забегая немного вперед, скажу, что нет какого-то универсального рецепта о корректном соотношении между COQ, COPQ и общей стоимостью проекта, все зависит от приоритетов по производительности проекта, стоимости, качества, интересов основных заинтересованных лиц.</p>
<p>Подводя итог можно сказать, что:</p>
<ul>
<li>Во-первых, если что-то кого-то в проекте не устраивает, то проблемы есть, и надо что-то улучшать</li>
<li>Во-вторых, если проблемы есть, но непонятно что конкретно может помочь, то можно предположить несколько наиболее полезных улучшений</li>
<li>НО, в-третьих, нужно понимать, чьим интересам какое улучшение соответствует, или не соответствует. Т.к. даже от самого очевидного улучшения не все участники проекта могут быть счастливы <img src='http://xpinjection.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . Об этом в следующей Части 2.2</li>
<li>В-четвертых, нужно определить, каким образом будет оцениваться успешность улучшений, так чтобы было поменьше субъективных ощущений и побольше цифр и фактов. Об этом в еще одной &#8211; Части 3.</li>
</ul>
<p>Спасибо за внимание, продолжение следует.</p>
<p><em>Оригинал статьи </em><em><a href="http://it-tuning.com/?p=1111" target="_blank">здесь</a>.</em></p>
<div class="shr-publisher-1676"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F18%2Fquality-cost-part-2-1-why-is-it%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+2.1+%E2%80%93+%D0%97%D0%B0%D1%87%D0%B5%D0%BC+%D1%8D%D1%82%D0%BE+%D0%BD%D0%B0%D0%B4%D0%BE%3F'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F18%2Fquality-cost-part-2-1-why-is-it%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+2.1+%E2%80%93+%D0%97%D0%B0%D1%87%D0%B5%D0%BC+%D1%8D%D1%82%D0%BE+%D0%BD%D0%B0%D0%B4%D0%BE%3F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F18%2Fquality-cost-part-2-1-why-is-it%2F' data-shr_title='%D0%A1%D1%82%D0%BE%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C+%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.+%D0%A7%D0%B0%D1%81%D1%82%D1%8C+2.1+%E2%80%93+%D0%97%D0%B0%D1%87%D0%B5%D0%BC+%D1%8D%D1%82%D0%BE+%D0%BD%D0%B0%D0%B4%D0%BE%3F'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F18%2Fquality-cost-part-2-1-why-is-it%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1676" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/18/quality-cost-part-2-1-why-is-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Рубрика «Полезное чтиво». Выпуск 18</title>
		<link>http://xpinjection.com/2012/01/16/useful-reading-volume-18/</link>
		<comments>http://xpinjection.com/2012/01/16/useful-reading-volume-18/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 14:00:34 +0000</pubDate>
		<dc:creator>Николай Алименков</dc:creator>
				<category><![CDATA[Полезное чтиво]]></category>
		<category><![CDATA[полезное чтиво]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1673</guid>
		<description><![CDATA[Сегодня снова понедельник и я поделюсь с вами прочитанным и просмотренным за неделю: Регрессионный рай и ад &#8211; о бедах регрессионного тестирования Seven Options for Handling Interruptions in Scrum and Other Agile Methods &#8211; как в Scrum бороться с прерываниями и срочными задачами Design for Testability – The True Story &#8211; TDD, mocks, DI позволяют <a href="http://xpinjection.com/2012/01/16/useful-reading-volume-18/" class="more-link">More &#62;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img class="article-right" src="/images/articles/useful-reading-18.jpg" alt="полезное чтиво" /></p>
<p>Сегодня снова понедельник и я поделюсь с вами прочитанным и просмотренным за неделю:</p>
<ul>
<li><a href="http://goblingame.blogspot.com/2012/01/blog-post.html">Регрессионный рай и ад</a> &#8211; о бедах регрессионного тестирования</li>
<li><a href="http://www.agileadvice.com/2012/01/08/scrumxplean/seven-options-for-handling-interruptions-in-scrum-and-other-agile-methods/">Seven Options for Handling Interruptions in Scrum and Other Agile Methods</a> &#8211; как в Scrum бороться с прерываниями и срочными задачами</li>
<li><a href="http://www.infoq.com/articles/Testability">Design for Testability – The True Story</a> &#8211; TDD, mocks, DI позволяют делать тестируемый код на долгое время</li>
<li><a href="http://agile.dzone.com/articles/static-analysis-isn’t">Static Analysis isn’t Development Testing</a> &#8211; использование статического анализа кода является легковесной проверкой, а не полноценным тестированием</li>
<li><a href="http://www.bigvisible.com/2012/01/to-unit-test-or-not-to-unit-test-that-is-the-question-really/">To Unit Test or not to Unit Test? That is the question. Really!?!?</a> &#8211; как в одной компании решали писать ли им модульные тесты</li>
<li><a href="http://www.theautomatedtester.co.uk/blog/2012/the-beginning-of-a-standard-for-browser-automation.html">The beginning of a standard for browser automation</a> &#8211; придут таки все игроки к договоренности сделать WebDriver стандартом для тестирования веб-приложений</li>
<li><a href="http://java.dzone.com/articles/why-i-verbosity-java">Why I Like The Verbosity of Java</a> &#8211; сложности базовых библиотек Java позволяют лучше понять механизмы их работы, что нужно для непримитивного кода</li>
<li><a href="http://blog.reallysimplethoughts.com/2012/01/11/improving-the-quality-of-your-tests-through-page-coverage/">Improving the Quality of Your Tests Through Page Coverage</a> &#8211; классная идея замерять покрытие страниц приложения тестами на WebDriver</li>
<li><a href="http://blog.yoz.sk/2011/12/flex-ant-maven-sonar/">Flex + ( Ant | Maven ) + Sonar</a> &#8211; даже для Flex есть статические анализаторы кода</li>
<li><a href="http://blogs.versionone.com/agile_management/2012/01/10/2-kanban-vs-scrum-myths-hype/">Part 2 of 2: Kanban vs Scrum Myths &#038; Hype</a> &#8211; если голова рыбы сгнила, то ни Scrum ни Kanban не помогут</li>
<li><a href="http://java.dzone.com/articles/one-correct-way-do-dependency">The One Correct Way to do Dependency Injection</a> &#8211; как делать правильный Dependency Injection</li>
</ul>
<p>Интересное видео:</p>
<ul>
<li><a href="http://www.infoq.com/presentations/JVM-Performance-Tuning-twitter">Everything I Ever Learned about JVM Performance Tuning @twitter</a> &#8211; лучшая презентация из тех, что я видел на тему управления памятью в JVM и настройки GC</li>
<li><a href="http://www.sonatype.com/people/2012/01/what-is-central/">What is Central?</a> &#8211; для тех, кто сомневается, что такое Maven Central</li>
</ul>
<p>Читайте и набирайтесь новых знаний!</p>
<div class="shr-publisher-1673"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F16%2Fuseful-reading-volume-18%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+18'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F16%2Fuseful-reading-volume-18%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+18'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F16%2Fuseful-reading-volume-18%2F' data-shr_title='%D0%A0%D1%83%D0%B1%D1%80%D0%B8%D0%BA%D0%B0+%C2%AB%D0%9F%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5+%D1%87%D1%82%D0%B8%D0%B2%D0%BE%C2%BB.+%D0%92%D1%8B%D0%BF%D1%83%D1%81%D0%BA+18'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F16%2Fuseful-reading-volume-18%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1673" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/16/useful-reading-volume-18/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Получится ли у вас Continuous Delivery?</title>
		<link>http://xpinjection.com/2012/01/13/is-continuous-delivery-is-possible-for-you/</link>
		<comments>http://xpinjection.com/2012/01/13/is-continuous-delivery-is-possible-for-you/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 11:40:19 +0000</pubDate>
		<dc:creator>Николай Алименков</dc:creator>
				<category><![CDATA[Статьи]]></category>
		<category><![CDATA[continuous delivery]]></category>
		<category><![CDATA[deployment]]></category>

		<guid isPermaLink="false">http://xpinjection.com/?p=1662</guid>
		<description><![CDATA[На данный момент подход Continuous Delivery стремительно набирает популярность. Все больше начинают о нем говорить на конференциях, встречах сообществ, интервью и прочих выступлениях. Многие компании построили свой процесс разработки так, чтобы поставлять &#171;свежие&#187; фичи конечным пользователям десятки раз в день. В чем же тут дело? Почему для большей части компаний это еще является заоблачной мечтой <a href="http://xpinjection.com/2012/01/13/is-continuous-delivery-is-possible-for-you/" class="more-link">More &#62;</a>]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img class="article-left" src="/images/articles/batch-size-cost.jpg" alt="выбор оптимального размера деплоя" /></p>
<p>На данный момент подход <a href="http://www.slideshare.net/alimenkou/continuous-delivery-for-upload">Continuous Delivery</a> стремительно набирает популярность. Все больше начинают о нем говорить на конференциях, встречах сообществ, интервью и прочих выступлениях. Многие компании построили свой процесс разработки так, чтобы поставлять &laquo;свежие&raquo; фичи конечным пользователям десятки раз в день. В чем же тут дело? Почему для большей части компаний это еще является заоблачной мечтой и недостижимым идеалом?</p>
<p>В действительности, за редкими поставками кода стоит вполне себе научное обоснование. За все в жизни приходится платить. Затраты на работу с готовой функциональностью делятся на два типа: стоимость поставки кода и стоимость накапливания функциональности. Стоимость поставки складывается из времени на его выполнение, определенных рисков, связанных с поставкой, и человеческих ресурсов, которые будут ее выполнять. Тут все просто. Стоимость накапливания готовой функциональности состоит, в свою очередь, из недополученной прибыли в результате отложенного появления нужной пользователю функции, поздней обратной связи, необходимости поддерживать непроверенные решения и прочих факторов.</p>
<p>Стоимость поставки уменьшается с количеством функциональности в этой поставке. Не надо, к примеру несколько раз в день производить тестирование, обновлять код на продакшене, делать обновления данных и т.д. Все это делается одним скопом в конце итерации или недели, месяца, квартала. Стоимость накапливания наоборот растет. Чем больше готовой функциональности ждет поставки, тем больше затраты на ее &laquo;содержание&raquo;. И тут вырисовывается вполне математически и экономически выверенное решение. Нужно минимизировать суммарную стоимость.</p>
<p>Графики стоимости в зависимости от размера релиза вы можете наблюдать на картинке. Стоимость накапливания очень тяжело уменьшить, так как она больше связана с бизнесом и конечными пользователями. Многие просто даже не считают эту стоимость и не задумываются о ней. Релиз раз в две недели? Ну и нормально! А то, что важная фича была реализована в первый же день и могла бы уже почти две недели использоваться, никого не волнует.</p>
<p>А вот уменьшить стоимость поставки вам под силу. Тут на помощь приходит автоматизация. Ведь машины делают повторяющиеся операции гораздо быстрее и качественнее людей. Речь идет о тестировании, сборке, установке, обновлению данных и т.д. Только уменьшив стоимость всех этих операций за счет правильных инструментов и автоматизации, можно говорить об уменьшении суммарной стоимости поставки кода.</p>
<p>Подведем итог. Попробуйте расписать график стоимости поставки и накопления функциональности для своего проекта, а потом проверьте оптимально ли у вас выбрана частота релизов. Результатами поделитесь в комментариях к статье. Удачи!</p>
<div class="shr-publisher-1662"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-tweetbutton' data-shr_count='none' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F13%2Fis-continuous-delivery-is-possible-for-you%2F' data-shr_title='%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B8%D1%82%D1%81%D1%8F+%D0%BB%D0%B8+%D1%83+%D0%B2%D0%B0%D1%81+Continuous+Delivery%3F'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F13%2Fis-continuous-delivery-is-possible-for-you%2F' data-shr_title='%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B8%D1%82%D1%81%D1%8F+%D0%BB%D0%B8+%D1%83+%D0%B2%D0%B0%D1%81+Continuous+Delivery%3F'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F13%2Fis-continuous-delivery-is-possible-for-you%2F' data-shr_title='%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B8%D1%82%D1%81%D1%8F+%D0%BB%D0%B8+%D1%83+%D0%B2%D0%B0%D1%81+Continuous+Delivery%3F'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fxpinjection.com%2F2012%2F01%2F13%2Fis-continuous-delivery-is-possible-for-you%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic --> <img src="http://xpinjection.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1662" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://xpinjection.com/2012/01/13/is-continuous-delivery-is-possible-for-you/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

