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

User Stories: a mindmap and a quick overview

Below is a simple mindmap for "Stories"

It gives a quick overview of the user story "concept" and how we used
it in our project. In short we:

Write small, deliverable, user stories ( 3-5 days )
Store them in Jira and on sticky notes
Include in each story a brief summary that highlights what it does,
why its valuable, and several tests
Evolve them from simple reminders, to placeholders for our
understanding, and finally an agreement on when we are "done".



This gives us some advantages:

(1) We are able to be more flexible since the details can be fleshed
out when the time is right
(2) We are able to collaborate and focus on verbal communication
instead of passing on written documents

I'll elaborate a bit on of each of these points.

Writing small, deliverable stories

Finding the "right" size for your stories is somewhat tricky. Since
people have very differnet ways of specifing "size" you are likely to
have to experiment and go with what fits your team. For us, it seems
that we have had most success with stories that a single developer
would use 3-5 days on.

Storing in Jira and on sticky notes

The simplest storage method is just to write things on a sticky note
and place it on your wall. It's quick, easy, and visible. Using some
software to store them can also be quite useful. In an offshore
situation that kind of becomes necessary.

Even if you use some software place to store your stories, I have
found that it's good to keep writing those sticky notes and getting
them up on the wall. This way the stories are always visible to
everybody, and there is also just a "feel good" factor in "physically"
taking them down when you are done.

Include in each story a brief summary that highlights what it does,
why its valuable, and several tests

One of the more tricky things is finding out how much to put into a
story. Again, this depends on how your team feels about it.
Before we started using stories we have some small "specifications".
These where typically a few pages with some text and screenshots.
Switching to user stories can be a slight shock to the system. The
most common question I got was, "Where are the details?".
Well, we do actually have a lot of "details" in our stories. These are
represented by the tests and an a GUI prototype. User stories are not
about masking out details. In order to deliver the story you need to
flesh out these details ( as it becomes necessary ), and in most cases
write them down as tests. In my world, the difference between user
stories, and some kind of "specification" is not really that big. It's
how you get there that counts. It's the collaborative, lightweight
"process" of going from an idea to an understanding of when a story is
"done".

In my experience, one of the biggest challenges is to make sure we
actually do the things necessary to make stories work. If you don't
discuss them properly, sincerly write down the tests, and collaborate
during them whole process, then your stories become more of a problem
than a solution.

Evolve them from simple reminders, to placeholders for our
understanding, and finally an understanding of when we are "done"
The reason why stories work is that they are flexible and demand that
you collaborate. A story starts out just as a simple reminder of a
discussion with the client. It evolves as you discuss it with other
people in the team, and you flesh out some details. In the end it
guides you towards aswering that simple question, "when are we
done?".


Ragnar Birgisson, Mar 07, for Agile-Ukraine Google group,
see
the discussion thread

ПОПУЛЯРНОЕ

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

Автор: Richard Lawrence Переведено с английского проектом Agile Translations   Хорошие Пользовательские Истории следуют INVEST модели , предложенной Биллом Вейком (Bill Wake). Они независимые ( I ndependent), обсуждаемые ( N egotiable), ценные ( V aluable), поддающиеся оценке ( E stimable), небольшие ( S mall) и тестируемые ( T estable). Именно требование к размеру приводит нас к необходимости делить большие Пользовательские Истории, однако, даже после разбиения, они все еще должны следовать этой модели. Многие начинающие agile-команды пытаются разделять Пользовательские Истории по архитектурным слоям: одна история для пользовательского интерфейса, другая — для базы данных, и так далее. Такой подход может удовлетворять критерию “небольшая” , однако, не сможет похвастаться тем же в случае с “независимая” и “ценная” . За девять лет работы с гибкими методологиями, я определил девять шаблонов разбиения Пользовательских Историй на хорошие, небольшие истории.

Основополагающие принципы Agile-манифеста

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

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

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

Все о Скрам от Майка Кона

На сегодняшний день многие уже знают основы Scrum. Однако я часто сталкиваюсь с разночтениями, и даже спорами по некоторым моментам. Поэтому считаю, что нужно обратиться к истокам. Как, наверняка, многие знают Майк Кон – один из наиболее популярных Scrum-тренеров, он работает с этой методологией более 10 лет, написал 2 концептуальные книги по практикам Agile, а также множество интересных и ценных статей, является одним из основателей Scrum-альянса и Agile-альянса. По праву его можно считать тем специалистом, определениям которого можно доверять. Читать дальше...

Планирование релиза: уходим от термина, но не от практики

Автор: Майк Кон (Mike Cohn) Перевод с английского. Я хочу обратить внимание на термин, используемый в Скраме (точнее, даже Аджайл термин), который во многом пережил себя: планирование релиза. Общепринятое использование "релизного планирование" заключалось в том(я так тоже делал), что мы смотрели в будущее на несколько спринтов вперед и пытались предсказать, что бы мы могли выпустить. Было бы хорошо в идеале эти предположения выражать в виде диапазона значений, возможно даже с использованием интервалов вероятности. В течение многих лет я учил команды делать именно так. Скажем, мы могли сказать, что “Мы уверены на 90%, что через шесть месяцев сможем выпустить продукт с функционалом в диапазоне между 150 и 200 стори поинтов.” Я до сих пор считаю эту практику полезной и каждый Скрам-мастер должен знать как это делается. Что на самом деле потеряло смысл, так это сам термин “планирование релизов”.