К основному контенту

ЧаВо (или просто F.A.Q.)

Q: Что такое "agile"? Это методология подобная другим, к примеру, RUP (Rational Unified)?
A: Agile - это не методология в полном понимании этого значения, это скорее набор принципов и ценностей, которые создают проектную среду, благоприятную для общения и кооперации ради решения общих проектных задач. Это достигается техниками, которые фокусируют команду и заказчиков на тесном сотрудничестве, акцентируют внимание на важности обмена информацией, повышают уровень креативности. Agile - это больше философия, чем методология. В agile не существует четких методов и предписанных шагов, которым можно было бы безболезненно следовать. Вместо этого agile дает набор хороших идей и здравых советов, основанных на опыте, которые вы можете начать использовать в своих проектах и адаптировать под свои конкретные нужды.

Q: Что значит быть "agile"? Как я узнаю, что я или мой проект следует agile-принципам?
A: Формально говоря, быть agile означает уважать ценности agile манифеста.
В повседневной-профессиональной жизни быть agile означает - быть достаточно гибким, приветствуя изменения требований в проекте на поздней фазе; быть креативным, общительным и позитивно настроенным; уважать людей, с которыми работаешь, и ценить их больше чем формальности и бумаги; поощрать и сопутствовать распространению информации в проектной среде; быть сфокусированным на конечном результате труда - программном продукте, принимая все другие артефакты как сопутствующие.
Быть agile - значить ценить профессионализм, оставаясь гибким в отношениях с людьми.

Q: Что это за штука такая "Scrum"?
A: Scrum - это один из agile подходов в ведении проектов, который стал довольно популярным за последние годы благодаря своему успеху. За эти годы тысячи проектов преуспели благодаря его применению. Сберегая все ценности и концепции agile подходов, Scrum предлагает четкую и простую структуру проекта (framework), которая дает заказчику и команде котроль над такими важными рисками как изменчивость и сложность, которые присутствуют по всех проектах. Scrum предлагает принять простые но мощные правила, к примеру, - как организовать взаимодействие между двумя сторонами проекта - заказчиками и командой, как создать позитивную и креативную среду в проекте, как научиться принимать изменения со стороны заказчиков без увеличения рисков проекта, и проч. В итоге вы получаете отличную сработанную команду, полностью контролирующую ход проекта.
--------------------------

ПОПУЛЯРНОЕ

Шаблоны декомпозиции Пользовательских Историй (User Stories)

Автор: Richard Lawrence
Переведено с английского проектом Agile Translations


Хорошие Пользовательские Истории следуют INVEST модели, предложенной Биллом Вейком (Bill Wake). Они независимые (Independent), обсуждаемые (Negotiable), ценные (Valuable), поддающиеся оценке (Estimable), небольшие (Small) и тестируемые (Testable). Именно требование к размеру приводит нас к необходимости делить большие Пользовательские Истории, однако, даже после разбиения, они все еще должны следовать этой модели.
Многие начинающие agile-команды пытаются разделять Пользовательские Истории по архитектурным слоям: одна история для пользовательского интерфейса, другая — для базы данных, и так далее. Такой подход может удовлетворять критерию “небольшая”, однако, не сможет похвастаться тем же в случае с “независимая” и “ценная”. За девять лет работы с гибкими методологиями, я определил девять шаблонов разбиения Пользовательских Историй на хорошие, небольшие истории.

Скрамбан - собираем лучшее

Автор: Илья Павличенко.


Иногда я слышу фразу - «теперь у нас будет СкрамБан». И, к сожалению, наблюдаю, что чаще всего это означает, что у команды теперь не будет ни полноценного Скрама, ни внедренного должным образом Канбана. Хотя это понятие (СкрамБан) подразумевает и первое, и второе. Таким образом, команды лишают себя преимуществ обоих методов, переходя в серую зону неопределенности.

Привожу цитату Алана Шалловея, одного из родоначальников Канбана (полностью его блог-пост по этому вопросу можно прочесть здесь):
«Теперь стало модно у многих Скрам команд уходить от итераций и кросс-функциональных команд и говорить, что теперь у них внедрен Канбан. Я принимаю то, что в Канбане отсутствует и первое, и второе. Но Канбан не определяется отсутствием итераций или кросс-функциональных команд. Он определяется визуализацией, управлением потока, наличием явных полиси и т.д. Если у вас был Скрам и вы решили уйти от итераций - у вас не Канбан. Вы даже и близко не подошли к тому, чтобы приблизиться…

Ретроспектива спринта - эффективный формат

Автор: Майк Кон (Mike Cohn)
Перевод с английского


Неважно, насколько опытной является Скрам-команда, при этом всегда существует возможность для ее улучшения. Не смотря на то, что хорошая Скрам-команда будет постоянно искать возможности для своего улучшения, она должна выделять короткий период времени в конце каждого спринта для сознательного размышления над тем, как идут их дела, и для поиска способов их улучшения. Все это происходит во время Ретроспективы спринта.

Об agile по-русски: User Stories, часть 1

«Разработка ПО - это игра изобретательности и кооперации»
Элистер Коуберн (1)
О чем эта статья? Это одна из статей серии «Про agile по-русски» (см. сноску внизу про значение термина «agile»), идея которых поделиться опытом использования agile принципов (2) в разработке программного обеспечения. Основная суть этих подходов – кооперация между всеми членами проекта и адаптивность процесса разработки к неизбежным изменениям. Также важным аспектом Agile является принятие человеческого фактора в проекте как неотъемлемой части и более того – как наиважнейшей причиной прогресса. Agile акцентирует важность поддержания человеческих отношений и учета человеческих особенностей для успеха проекта.Эта статья рассказывает о применении «userstories» («пользовательских историй») - одной из практик agile. Далее для краткости я буду называть их просто «историями». Для кого эта статья? Эта статья для профессионалов по разработке программного обеспечения: менеджеров продуктов, менеджеров верхнего и среднег…

Какие проекты лучше всего подходят для применения Agile

Автор: Майк Кон (Mike Cohn)
Переведено с английского проектом Agile Translations.



Недавно меня спросили, для какого вида проектов больше всего подходит применение гибкого подхода разработки, и сейчас я хотел бы об этом поговорить. Мне кажется, самыми подходящими для использования гибких методик являются проекты с агрессивными сроками выполнения, высокой степенью сложности и так же высоким уровнем инновации (уникальности). Мы хотим использовать Agile, когда делаем что-то новое, по крайней мере, новое для конкретной команды разработки. Если команда делает то, что она уже делала не один раз, она, вероятно, не нуждается в гибком подходе.

На мой взгляд, здесь было бы уместным привести аналогию с промышленным производством. День за днем, собирая один и тот же тип автомобиля, мы довольно быстро учимся всем нюансам сборки этой модели. Здесь нам не нужны гибкие подходы, потому что степень новшества данного процесса является довольно низкой. Однако, инновация сама по себе не означает, что мы дол…