Главная » 2014»Февраль»9 » Практическое руководство по экстремальному программированию
06:30
Практическое руководство по экстремальному программированию
Экстремальное программирование (eXtreme Programming — ХР) на сегодня стало реальностью, от которой уже невозможно отказаться. Оно направлено на создании высококачественных программ. Основная концепция ХР заключается в следующем: профессионалы-разработчики могут достичь успеха, просто внедрив ряд взаимно усиливающих принципов и действий и затем следуя им. Книга выходит за рамки теории и дает исчерпывающие примеры ХР, включающие пользовательские описания системы, тесты приемлемости, тесты модулей и исходный код. Авторы описывают, как создаются и используются эти примеры на практике. Книга будет полезна всем, кто активно участвует в разработке программного обеспечения — разработчикам, менеджерам и даже заказчикам. Вы можете и не применять подход ХР в вашем следующем проекте, но все равно получите огромную пользу от прочтения этой книги. Отдельные принципы ХР сами по себе достаточно эффективны, и вряд ли найдется хоть одна команда, которая бы не выиграла от внедрения одного или двух из этих принципов.
Название: Практическое руководство по экстремальному программированию Автор: Астелс Д., Миллер Г., Новак М. Издательство: Вильямс Год: 2002 Страниц: 320 Формат: PDF Размер: 20,3 МБ ISBN: 5-8459-0329-7 Качество: Отличное Серия или Выпуск: Серия Питера Кода Язык: Русский
Содержание:
Предисловие Введение Знакомство: вперед к самовыражению Часть 1. Игра 1. Экстремальные принципы Работайте с заказчиком Используйте метафоры для описания сложных концепций Планируйте Проводите короткие совещания Сначала пишите тесты Упрощайте Программируйте в паре Программируйте согласно стандартам Коллективное владение кодом Постоянно интегрируйте систему Проводите переработку Чаще выпускайте версии Не перегорите (40-часовая рабочая неделя) Приветствуйте изменения 2. Участники игры Две команды Команда заказчиков Рассказчики Приемщики «Золотовладельцы» Планировщики Большой босс Команда разработчиков Инструктор Контролер Дипломат Архитектор Значение ролей Определение прав Резюме Часть 2. Концептуализация системы 3. Создание представления о системе Концептуализация системы Карта представления о системе Метафора Метафоры для разработки Резюме 4. Создание историй пользователя Философия историй пользователя Истории пользователя Нумерация стека Резюме Приложение к главе 4 5. Создание приемочных тестов Что такое приемочный тест? Создание тестов Сложности, связанные с приемочными тестами Бесконечное количество приемочных тестов Автоматизация приемочных тестов Резюме 6. Одно простое решение Что ищем? Принимайте самые простые решения «Гвоздь» концептуального решения Резюме 7. Следим за словами Проблема Значение имени Постоянная переработка и общение Резюме Часть 3. Планирование Права команды заказчиков Планирование Права разработчиков 8. Предоставление оценок Предоставление оценок Предположения Деление «Гвозди» планирования Резюме 9. Планирование версий Производительность Стоимость версии Определение приоритетов Программирование в паре Составление плана версий Резюме 10. Планирование итераций Создание серий итераций Необходимые условия для планирования итераций Первая итерация Последующие итерации Составление графика итераций Резюме 11. Тактическое планирование Начало итерации Распределение задач Ежедневные собрания Контроль за проектом Раннее завершение задач Резюме Часть 4. Разработка Введение 12. Программирование в паре Механизмы программирования в паре Разработка как диалог Вдвое больше пользы Суммарный эффект Ориентируемся на более слабого Резюме 13. Сначала проводите тесты Проект XP Зачем необходимы тесты Что необходимо тестировать Когда необходимо проводить тесты Как необходимо проводить тесты: каркас тестирования И снова необходимые допущения: создание тестов От зеленого к зеленому От зеленого к красному От желтого к желтому От желтого к зеленому От красного к желтому От красного к красному Пример Доводы в пользу разработки, основанной на тестах Резюме 14. Проектирование Проектирование и экстремальное программирование Когда в XP стоит использовать шаблоны проектирования Архитектура и ХР Гибкое моделирование Что такое гибкое моделирование Характеристика AM Личность и взаимодействие против процессов и инструментов Работающее программное обеспечение против обширной документации Сотрудничество с заказчиками против условий контракта Соответствие изменениям против следования плану Обзор ценностей и принципов гибкого моделирования Ценности гибкого моделирования Принципы гибкого моделирования Принципы гибкого моделирования Резюме 15. Продуманное программирование Что значит имя Простота - это путь к достижению сложного Необходимые предположения Пусть компилятор указывает «Без комментариев» Коллективное владение кодом Лучше перегореть, чем угаснуть? Счастливые разработчики - продуктивные разработчики Не забывайте о личной жизни Резюме 16. Переработка кода Примеры переработки Введение поясняющей переменной Разделение временной переменной Смелость «Зловонный» код Когда необходимо осуществлять переработку Две шляпы Шаблоны для переработки Пример переработки Резюме 17. Постоянная интеграция Практические советы Регистрируйте работу только после тестирования, успешного на 100 % Антишаблон Подходы к интегрированию Немного о пересмотре программы Влияние коллективного владения кодом Резюме Часть 5. Выпуск готового продукта Введение 18. Выпуск системы День выпуска Выпуск в производство Тестирование Празднование победы Часть 6. Дополнительные темы Введение 19. Внедрение и адаптация XP Понимание экстремального программирования Переход к экстремальному программированию Методы внедрения экстремального программирования Адаптация экстремального программирования Принципы экстремального программирования Доход от инвестиций Резюме 20. Масштабирование XP Объемные разработки Организация больших проектов XP Открытые и дружественные отношения Интеграция Важность профессионализма Резюме 21. Будущее экстремального программирования Куда движется экстремальное программирование Узкие места Холонический подход к экстремальному программированию Ремесло: разработка программного обеспечения Развитие экстремального программирования Приложение. Пример использования XP Описание проекта История проекта Метафора Оценки, приоритеты и планирование Задачи Инструменты Приемочные тесты Код ядра Код пользовательского интерфейса Код подсистемы печати Результат выполнения Резюме Библиография Предметный указатель