Пользовательские истории. Гибкая разработка программного обеспечения
Майк Кон
В этой книге, выхода которой с нетерпением ожидало сообщество сторонников гибких методологий разработки программного обеспечения, описывается процесс подготовки требований к разрабатываемой системе, который позволяет экономить время, избавляет от необходимости в переделках и ведет к созданию более совершенных программ. Лучший способ создать программное обеспечение, максимально полно удовлетворяющее потребностям пользователей, — начать с пользовательских историй. Это простые, понятные и краткие описания функциональности, которая представляет деловую ценность для реальных пользователей. В книге приводятся подробные рекомендации относительно того, как следует писать пользовательские истории и включать их в жизненные циклы разработки проекта. Вы узнаете, что такое хорошие пользовательские истории и что делает истории плохими. Вы познакомитесь с практическими методами сбора историй, позволяющими добиться хороших результатов даже тогда, когда возможность непосредственного общения с пользователями отсутствует. Автор демонстрирует, как систематизировать подготовленные пользовательские истории, установить для них приоритеты и эффективно применять для решения задач планирования, разработки и тестирования программного обеспечения.
- Моделирование пользовательских ролей.
- Сбор историй: опрос пользователей, анкетный метод, наблюдение, собрания.
- Работа с менеджерами, инструкторами, продавцами и другими представителями пользователей.
- Написание пользовательских историй для приемочного тестирования.
- Использование историй для ранжирования задач, составления графиков работ и оценки трудозатрат.
- В конце каждой главы приводится список контрольных вопросов и упражнений для самопроверки.
Книга будет полезна разработчикам, тестировщикам, аналитикам и менеджерам проектов, использующим любую гибкую методологию программного обеспечения: XP, Scrum... и даже собственный гибкий подход.
Издательство: Вильямс, 2012 г.
ISBN 978-5-8459-1795-9
Количество страниц: 256.
Содержание книги «Пользовательские истории. Гибкая разработка программного обеспечения»:
- 13 Предисловие
- 14 Благодарности
- 15 Введение
- 19 Часть I. Приступаем к работе
- 21 Глава 1. Общий обзор
- 22 Что такое пользовательская история
- 23 Где описывать детали
- 24 «На скольких страницах я должен это написать?»
- 25 Команда заказчика
- 26 Что будет собой представлять сам процесс
- 27 Планирование выпусков и итераций
- 29 Что такое приемочные тесты
- 30 Зачем что-то менять
- 32 Резюме
- 32 Контрольные вопросы
- 35 Глава 2. Написание историй
- 35 Независимость
- 36 Обсуждаемость
- 39 Ценность для покупателей или пользователей
- 40 Оцениваемость
- 41 Компактность
- 41 Разбиение историй
- 44 Объединение историй
- 44 Тестируемость
- 45 Резюме
- 45 Обязанности разработчика
- 46 Обязанности заказчика
- 46 Контрольные вопросы
- 47 Глава 3. Моделирование пользовательских ролей
- 47 Пользовательские роли
- 48 Этапы моделирования ролей
- 49 Определение начального набора ролей методом «мозгового штурма»
- 49 Организация начального набора ролей
- 51 Объединение ролей
- 52 Уточнение ролей
- 53 Две дополнительные методики
- 53 Личности
- 54 Экстремальные персонажи
- 55 Если есть местные пользователи
- 55 Резюме
- 56 Обязанности разработчиков
- 56 Обязанности заказчика
- 56 Контрольные вопросы
- 57 Глава 4. Сбор историй
- 57 Откажитесь от выявления и фиксации требований
- 58 Сколько нужно написать историй
- 59 Методы
- 59 Интервьюирование пользователей
- 60 Открытые и контекстно-независимые вопросы
- 61 Анкетирование
- 62 Наблюдение
- 62 Собрания по написанию историй
- 66 Резюме
- 66 Обязанности разработчиков
- 66 Обязанности заказчика
- 67 Контрольные вопросы
- 69 Глава 5. Работа с представителями пользователей
- 69 Менеджер пользователей
- 70 Менеджер разработчиков
- 71 Продавцы
- 72 Специалисты в предметной области
- 72 Маркетинговая группа
- 73 Прежние пользователи
- 73 Заказчики
- 74 Обучающий персонал и группа технической поддержки
- 75 Системные аналитики и бизнес-аналитики
- 75 Как организовать работу с представителями пользователей
- 75 Если пользователи есть, но доступ к ним ограничен
- 76 Если доступ к пользователям полностью исключен
- 77 Можете ли вы сделать все сами
- 77 Принципы формирования команды заказчика
- 78 Резюме
- 79 Обязанности разработчика
- 79 Обязанности заказчика
- 79 Контрольные вопросы
- 81 Глава 6. Приемочное тестирование пользовательских историй
- 82 Сначала пишутся тесты, а затем — код
- 83 Тесты определяет заказчик
- 83 Тестирование — это часть процесса разработки
- 84 Сколько нужно тестов
- 84 Инфраструктура для интеграционного тестирования
- 85 Типы тестирования
- 86 Резюме
- 86 Обязанности разработчика
- 87 Обязанности заказчика
- 87 Контрольные вопросы
- 89 Глава 7. Советы по написанию хороших историй
- 89 Начинайте с целевых историй
- 89 Разрежьте пирог
- 90 Пишите законченные истории
- 91 Используйте карточки ограничений
- 92 Растяните историю до масштабов горизонта
- 93 Не беритесь за пользовательский интерфейс как можно дольше
- 93 Не все должно описываться историями
- 94 Включайте пользовательские роли в истории
- 94 Формулируйте историю для пользователя в единственном числе
- 95 Используйте действительный залог в предложениях
- 95 Истории пишет заказчик
- 95 Не нумеруйте карточки историй
- 95 Не упускайте из виду цель
- 95 Резюме
- 96 Контрольные вопросы
- 97 Часть II. Оценка и планирование
- 99 Глава 8. Оценка пользовательских историй
- 99 Баллы историй
- 100 Выполняйте оценку всей командой
- 100 Процесс оценки
- 102 Триангуляция
- 102 Использование баллов историй
- 104 А что если программисты работают в паре
- 105 Полезные напоминания
- 105 Резюме
- 105 Обязанности разработчика
- 106 Обязанности заказчика
- 106 Контрольные вопросы
- 107 Глава 9. Планирование выпусков
- 107 На какую дату планировать выпуск
- 108 Что должно войти в выпуск
- 108 Назначение приоритетов историям
- 110 Смешанные приоритеты
- 110 Истории, сопряженные с рисками
- 111 Приоритеты инфраструктурных потребностей
- 112 Выбор длительности итерации
- 113 От баллов историй к ожидаемой длительности
- 113 Начальная скорость
- 114 Выдвижение предположений относительно скорости разработки
- 114 Составление плана выпуска
- 115 Резюме
- 116 Обязанности разработчика
- 116 Обязанности заказчика
- 116 Контрольные вопросы
- 117 Глава 10. Планирование итераций
- 117 Общая схема процесса планирования итераций
- 117 Обсуждение историй
- 118 Разбиение историй на задачи
- 119 Рекомендации
- 120 Ответственность за выполнение
- 121 Оценка и подтверждение
- 122 Резюме
- 122 Обязанности разработчика
- 122 Обязанности заказчика
- 122 Контрольные вопросы
- 123 Глава 11. Измерение и мониторинг производительности
- 123 Измерение производительности
- 125 Плановая и фактическая скорость
- 126 Итерационный график объема невыполненных работ
- 128 График объема оставшихся работ для одной итерации
- 131 Резюме
- 132 Обязанности разработчика
- 132 Обязанности заказчика
- 132 Контрольные вопросы
- 135 Часть III. Часто обсуждаемые вопросы
- 137 Глава 12. Чем не являются истории
- 137 Пользовательские истории не подчиняются стандарту IEEE 830
- 140 Пользовательские истории — это не варианты использования
- 144 Пользовательские истории не являются сценариями
- 146 Резюме
- 147 Контрольные вопросы
- 149 Глава 13. Зачем нужны пользовательские истории
- 149 Устное общение
- 151 Пользовательские истории понятны
- 152 Размер пользовательских историй делает их удобными для планирования
- 153 Пользовательские истории пригодны для итеративной разработки
- 154 Истории стимулируют откладывать разработку деталей на более поздние этапы
- 154 Истории поддерживают спонтанную разработку
- 155 Пользовательские истории стимулируют совместное проектирование
- 156 Работа с историями способствует обмену опытом
- 156 Когда истории могут быть неэффективными
- 157 Резюме
- 158 Обязанности разработчика
- 158 Обязанности заказчика
- 158 Контрольные вопросы
- 159 Глава 14. Каталог запахов историй
- 159 Заниженный размер историй
- 159 Взаимозависимые истории
- 160 Украшательство
- 161 Чрезмерное количество деталей
- 161 Преждевременное включение деталей пользовательского интерфейса
- 161 Опережение событий
- 162 Разбиение слишком большого количества историй
- 162 Заказчик испытывает проблемы с назначением приоритетов историй
- 163 Отказ заказчика от написания и ранжирования историй
- 163 Резюме
- 164 Обязанности разработчика
- 164 Обязанности заказчика
- 164 Контрольные вопросы
- 165 Глава 15. Использование историй в методологии Scrum
- 165 Итеративная и инкрементная природа Scrum
- 166 Основы Scrum
- 166 Команда Scrum
- 167 Журнал запросов на выполнение работ
- 168 Собрания по планированию спринтов
- 170 Собрания по обзору результатов спринта
- 170 Ежедневные собрания Scrum
- 172 Добавление историй в Scrum
- 172 Истории и журнал запросов на выполнение работ
- 173 Использование историй на собраниях по планированию спринтов
- 173 Использование историй на собраниях по обзору результатов спринта
- 173 Истории и ежедневные Scrum-собрания
- 173 Конкретный пример
- 175 Резюме
- 175 Контрольные вопросы
- 177 Глава 16. Дополнительные вопросы
- 177 Обработка нефункциональных требований
- 178 Бумага или программное обеспечение?
- 181 Истории и пользовательский интерфейс
- 183 Хранение историй
- 184 Истории для устранения ошибок
- 185 Резюме
- 185 Обязанности разработчика
- 186 Обязанности заказчика
- 186 Контрольные вопросы
- 187 Часть IV. Пример
- 189 Глава 17. Пользовательские роли
- 189 Проект
- 189 Определение заказчика
- 190 Определение начальных ролей
- 191 Объединение и сужение ролей
- 192 Моделирование ролей
- 194 Добавление личностей
- 197 Глава 18. Истории
- 197 Истории для Терезы
- 200 Истории для капитана Рона
- 201 Истории для новичка
- 201 Истории для покупающего в подарок
- 202 Истории для читателя отчетов
- 203 Административные истории
- 204 Подведение итогов
- 205 Глава 19. Оценка историй
- 206 Первая история
- 208 Расширенный поиск
- 209 Рейтинги и отзывы
- 210 Учетные записи
- 210 Завершение процесса оценивания историй
- 211 Полная сводка оценок историй
- 215 Глава 20. План выпуска
- 215 Оценка производительности команды
- 215 Установление приоритетов историй
- 217 Окончательный план выпуска
- 219 Глава 21. Приемочные тесты
- 219 Тестирование поиска
- 220 Тестирование покупательской корзины
- 221 Покупка книг
- 222 Учетные записи пользователей
- 223 Администрирование
- 224 Тестирование ограничений
- 224 Завершающая история
- 227 Часть V. Приложения
- 229 Приложение А. Обзор экстремального программирования
- 229 Роли
- 230 Двенадцать основных приемов XP
- 230 Частые выпуски версий
- 231 Игра в планирование
- 232 Рефакторинг
- 232 Разработка через тестирование
- 233 Парное программирование
- 233 Оптимальный рабочий ритм
- 234 Совместное владение кодом
- 234 Стандарты кодирования
- 235 Простота дизайна
- 235 Метафора системы
- 235 Непрерывная интеграция
- 236 Присутствие заказчика в команде
- 236 Ценности XP
- 237 Принципы XP
- 237 Резюме
- 239 Приложение Б. Ответы на контрольные вопросы
- 239 Глава 1. «Общий обзор»
- 240 Глава 2. «Написание историй»
- 241 Глава 3. «Моделирование пользовательских ролей»
- 242 Глава 4. «Сбор историй»
- 243 Глава 5. «Работа с представителями пользователей»
- 243 Глава 6. «Приемочное тестирование пользовательских историй»
- 243 Глава 7. «Советы по написанию хороших историй»
- 245 Глава 8. «Оценка пользовательских историй»
- 245 Глава 9. «Планирование выпусков»
- 246 Глава 10. «Планирование итераций»
- 246 Глава 11. «Измерение и мониторинг производительности»
- 247 Глава 12. «Чем не являются истории»
- 248 Глава 13. «Зачем нужны пользовательские истории»
- 249 Глава 14. «Каталог запахов историй»
- 249 Глава 15. «Использование историй в методологии Scrum»
- 250 Глава 16. «Дополнительные вопросы»
- 251 Список литературы
- 255 Предметный указатель
Инструкция как скачать книгу Майк Кон: Пользовательские истории. Гибкая разработка программного обеспечения в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.