Agile-менеджмент. Лидерство и управление командами - [16]
Как следствие внезапного и почти одновременного появления множества методик, статей, книг и семинаров по «легким» методологиям (некоторые даже сравнивали его с Кембрийским взрывом), у лидеров движения возникла идея собраться и обсудить положение дел. В 2001 году они встретились на лыжном курорте в штате Юта. Там и был выбран термин «гибкие методологии» (Agile), заменивший применявшуюся ранее терминологию, а также был создан Agile-манифест разработки ПО (рис. 2.2).
Agile-манифест многими рассматривался в первую очередь как реакция против бюрократического характера существовавших на тот момент формальных подходов, которые были слишком «упорядоченными». Но лишь немногие поняли, что авторы манифеста также выступают против отсутствия дисциплины у программистов, против «хаотических» процессов и низкого качества, которое в то время доминировало на рынке ПО. Лидеры нового движения осознали, что существует средний путь между структурированностью и отсутствием структуры, между упорядоченностью и хаосом. В определенном смысле это была героическая попытка вернуться к более ранней эпохе, когда основными игроками были программисты-первопроходцы, но анархии при этом не было.
Впоследствии группа наиболее авторитетных представителей Agile-движения создала Agile Alliance[4] – некоммерческую организацию, которая ставит себе целью продвижение гибких методологий во всем мире. Возникла целая новая экосистема, состоящая из конференций, консультантов, книг и журналов. В результате процессы разработки программного обеспечения стали Agile c большой буквы А, превратившись в нечто более глубокое, чем просто набор практик, которые можно использовать при разработке софта. Признавая, что проекты по разработке программного обеспечения существуют в области, которая располагается между упорядоченностью и хаосом, Agile-подходы, по сути, превратились в образ жизни.
Фундаментальные принципы Agile-методологий
В наши дни численность людей, которые разделяют ценности и принципы Agile-методологий, составляет несколько миллионов человек. Опросы подтверждают, что большинство разработчиков программного обеспечения во всем мире придерживаются по крайней мере некоторых из «основных Agile-практик» [VersionOne 2009].
Фундаментальные принципы Agile-методологий были неоднократно описаны, и у многих авторов это получается гораздо лучше, чем у меня. И все же я чувствую необходимость привести в своей книге их краткий обзор. Будучи практиком гибких методологий, я предпочитаю делать все так, как удобно лично мне; поэтому кратко опишу их основные положения, перечислив «семь измерений», в которых «живут» проекты по разработке ПО, – и еще раз вернусь к этой теме в главе 11 «Развитие компетенций».
Прежде всего Agile-методологии признают за людьми их уникальность и не относятся к ним как к взаимозаменяемым ресурсам. Также признается, что основную ценность представляют взаимодействия и сотрудничество между людьми, а не их индивидуальные компетенции. Данный подход также предполагает работу в небольших кросс-функциональных командах, объединяющих людей, выполняющих разные роли (разработчиков, дизайнеров, тестировщиков и так далее). Предпочтительным вариантом будет размещение команды в одном помещении. От команды требуется самоорганизоваться, что означает отсутствие навязываемых извне методов или рабочих процессов. Команде доверяется выполнение определенной работы, исходя из представления, что ее члены знают, как эту работу выполнить, и осознают свою ответственность за результат.
В рамках Agile-методологий признается, что лучшие программные продукты создаются в условиях, когда заказчик максимально вовлечен в процесс разработки. Команда сотрудничает с заказчиком (или его представителем), поддерживая в актуальном состоянии backlog проекта и постоянно обновляя совместные приоритеты. Описание желаемой функциональности осуществляется в предельно кратком виде и детализируется только непосредственно перед началом работы над ней. Простота будет ключом к хорошему дизайну каждой из функциональных возможностей. Полезность данной функциональности оценивается и подтверждается клиентом сразу же после ее создания.
Качество играет определяющую роль в успехе продукта, поэтому в центре внимания Agile-методологий находится техническое совершенство. Высокий технический уровень обеспечивается посредством разработки через тестирование (написание протокола тестирования готового продукта предшествует созданию собственно программного кода), ревью кода (часто в сочетании с парным программированием), Definition of Done (чек-лист готовности элементов), итеративной разработки (адаптация кода в результате появившихся изменений или других обстоятельств) и рефакторинга (непрерывная оптимизация кода даже при отсутствии изменений в функциональности). Сторонники гибких методологий признают необходимость последовательного улучшения дизайна; под этим понимается, что в начале проекта архитектура продукта не разрабатывается в деталях (а только в самом базовом виде) и выявляется при дальнейшем развитии проекта.
Это один из самых насущных и спорных вопросов нашего времени, вызывающий жаркие споры и глубоко пропитанный идеологией. Кому должно быть позволено иммигрировать, а кому — нет? Каковы доводы за и против ограничения числа иммигрантов? В «Исходе» выдающийся экономист Пол Коллиер ясно и сжато описывает последствия стимулирования или сдерживания миграции. Опираясь на оригинальное исследование и многочисленные обзоры конкретных случаев, он рассматривает эту проблему с трех точек зрения: самих мигрантов, людей, которых они оставили, и обществ, в которые они иммигрируют.
Вальтер Шайдель (иногда его на английский манер называют Уолтер Шейдел) – австрийский историк, профессор Стэнфорда, специалист в области экономической истории и исторической демографии, автор яркой исторической концепции, которая устанавливает связь между насилием и уровнем неравенства. Стабильные, мирные времена благоприятствуют экономическому неравенству, а жестокие потрясения сокращают разрыв между богатыми и бедными. Шайдель называет четыре основных причины такого сокращения, сравнивая их с четырьмя всадниками Апокалипсиса – символом хаоса и глобальной катастрофы.
В книге рассмотрены знаменитые исторические и политэкономические исследования Карла Маркса (1844–1881), критика общественных систем и взглядов философов (Г.В.Ф. Гегеля и Л. А. Фейербаха), теория отчужденного труда, становление исторического материализма и его влияние на революции 1848 года. Автор книги, Чэнь Сяньда, проследил основные этапы формирования концепции исторического материализма и дал оценку каждому из них. Издание также содержит идеи автора по актуальным вопросам марксистской философии в Китае и мире. Для широкого круга читателей.
Общепринятые теории капитализма находятся в глубоком кризисе: после столетий споров они все ещё не могут сказать нам, что такое капитал. Либералы и марксисты считают капитал экономической сущностью, которую они считают в универсальных единицах «единицах полезности» (utils) и абстрактного труда, соответственно. Но эти единицы абсолютно воображаемые: их нельзя ни наблюдать, ни измерить. А поскольку либерализм и марксизм зависят от этих несуществующих единиц, то подвергаются сомнению. Они не могут объяснить самого главного — процесс накопления капитала. Этот кризис теорий не является случайным.
Книга депутата Государственной Думы РФ, доктора экономических наук, члена-корреспондента РАН, Сергея Глазьева дает ответы на многочисленные вопросы, которые на встречах и в письмах известному политику задают жители самых разных регионов страны. Сколько мы потеряли людей, доходов, производственного потенциала? Что у нас еще осталось? Кто такие реформаторы и кто такие олигархи? В чьих интересах делаются сегодняшние реформы? Как повысить зарплату? Как защитить детей и укрепить семью? Можно ли удвоить доходы государственного бюджета? Реально ли вернуть "сгоревшие" сбережения? На эти и другие злободневные вопросы сегодняшней жизни Сергей Глазьев дает обстоятельные ответы.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.