Pull to refresh

Обзор книги Configuration Management Best Practices

Reading time 3 min
Views 4K
Добрейшего.

Не так давно я озадачился поиском книжек по управлению конфигурацией ПО. В результате получился обзор литературы по SCM, преимущественно англоязычной. Финалистами стали 3 книжки, которые было решено приобрести и изучить. И первой из них — как по «интересности», так и по авторитетности лично для меня — стала книга Configuration Management Best Practices: Practical Methods that Work in the Real World, написанная Бобом Айелло (Robert Aiello) в соавторстве с Лесли Сакс (Leslie Sachs). На русский название можно перевести как "Лучшие практики управления конфигурацией: практические методы, работающие в реальном мире".

Пока заказывал и дожидался — успел прочитать в электронном виде (пиратство — страшное зло!), однако потраченных денег не жалею — труд автора должен быть оплачен. Да и книжка весьма приятна внешне и внутренне. О чём же она?

Книга поделена на 4 части:

The Core CM Best Practices Framework. Основа, начало начал. Рассказывается, что такое SCM, зачем нужен, из каких базовых практик состоит — коротко и по делу. Интересно, что контроль версий здесь обозначается более общим термином source code management, т.е. управление исходным кодом. Сделано это намеренно, т.к. автор считает, что контроль версий (так традиционно называют эту область) — это лишь одна из функций управления кодом. Немало рассказано и про управление изменениями (change control). Опять же, термин более общий, чем просто традиционное «отслеживание ошибок», потому что речь идет именно о высокоуровневых подходах к вопросу. И, к слову, про эти самые системы отслеживания ошибок — ни слова :), только про запросы на изменения продукта. Немало уделяется и выпуску продукта — а именно выпуску релизов и развертыванию, вместе с контролем зависимостей.

Architecture and Hardware CM. Здесь описывается два отдельных аспекта работы SCM. Во-первых, вводится предположение о том, что разработка архитектуры проекта может быть основана на управлении конфигурацией этого самого проекта. Смелое и странное на первых взгляд предположение, однако изложено интересно.
Во-вторых, поднимается вопрос об управлении конфигурацией аппаратного обеспечения (hardware configuration management). Для разработки систем, где задействованы или разрабатываются аппаратные средства — вещь крайне нужная. Описаны только основы организации HCM, поскольку в каждом случае реализация будет различной.

The People Side of CM. Весь раздел — по сути, рассказ о том, как логичные правила и процедуры сталкиваются с нелогичной и противоречивой человеческой природой. Тут и прагматичное «Rightsizing Your processes» (как сделать процессы не слишком громоздкими), и полное борьбы «Overcoming Resistance to Change», и всепрощающее «Learning From Mistakes That I Have Made». Здесь же — глава, написанная психологом-соавтором Лесли, «Personality and CM: A Psychologist Looks at the Workplace». Названия говорят сами за себя, весь раздел — он про людей и этим всё сказано.

Compliance, Standards, and Frameworks. Как следует из названия, подводится опыт изучения и использования различных стандартов и шаблонов процессов. Ведь сама область SCM существует уже три или четыре десятка лет, поэтому здесь давно уже есть стандартизованные подходы. Про них и ведется рассказ.

Об авторе. Боб Айелло работает в области SCM уже 25 лет (четверть века!). За это время переработал в нескольких компаниях, поучаствовал в куче проектов и проконсультировал уйму народу. В настоящий момент, помимо консультаций, является замруководителя рабочей группы стандарта IEEE 828 по Планированию Управления Конфигурацией. В свободное время — главный редактор CM Crossroads — центрального ресурса по вопросам SCM. Иными словами — игрок высшей лиги, человек и пароход.

О книжке в целом. Если посмотреть в целом, то книга — она про людей, как ни странно. Все описанные подходы описываются с точки зрения здравого смысла и повседневной работы простых инженеров. Много личных примеров, где особенно ценен отрицательный опыт.

Чем ещё ценна — это тем, что в одном источнике собрано то, что раньше можно было прочитать или в стандартах (сухим формальным языком), или в отдельным источниках, где нет общей «картины мира». Эта книжка — приятное исключение.

Кому и зачем нужна книга?

Если пишешь код или тестируешь — будет просто нелишним узнать, что происходит вокруг, и почему менеджеры вдруг приводят какого-то человека, который начинает объяснять как надо правильно жить.
Если работаешь релиз-инженером или СМ-инженером — читать обязательно, более общего взгляда на предметную область просто не видел. Цельная картина мира в голове по прочтении — обеспечена. Понимание того, куда надо идти дальше, проявится ещё более четко.
Если руководишь проектом или являешься техлидом — крайне рекомендую прочитать, хотя бы потому, что есть много пересечений с общепроектными видами деятельности. Да и вообще, СМ — это область базовая, а потому именно она создает много узких мест, bottleneck-ов — так что для их преодоления надо знать с какого боку подойти. Потому и на Хабр запостил в блог «Управление проектами».

В общем, нужная книжка, надо брать. Я брал в Амазонке.
Tags:
Hubs:
+13
Comments 4
Comments Comments 4

Articles