Практическое руководство по экстремальному программированию

Дэвид Астелс, Гранвилл Миллер, Мирослав Новак

A Practical Guide to Extreme Programming First Edition
David Astels, Granville Miller, Miroslav Novak
книга Практическое руководство по экстремальному программированию

Тираж данной книги закончился.
Оглавление
Введение
Файлы к книге
Рецензии на книгу

Экстремальное программирование (eXtreme Programming — ХР) на сегодня стало реальностью, от которой уже невозможно отказаться. ХР сосредоточено непосредственно на создании высококачественных программ, отказываясь от всего, что не поддерживает прямо эту цель. Экстремальное программирование явно ориентировано на людей: оно не признает общепринятой философии менеджмента, основанной на том, что люди являются легко заменимыми компонентами в механизме разработки программного обеспечения. ХР также основано на концепции, что профессионалы-разработчики могут достичь успеха, просто внедрив ряд взаимно усиливающих принципов и действий и затем следуя им. Это отрицает парадигму предписывающего программирования, которое оперирует с процедурными "поваренными книгами" для создания систем. Экстремальное программирование — это совершенно другая система, которая утверждает: если вы примете все ее принципы, если будете работать вместе с вашими заказчиками, если сконцентрируетесь на том, что действительно важно, то успешно выполните задачу разработки программного обеспечения. Книга выходит за рамки теории и дает исчерпывающие примеры ХР, включающие пользовательские описания системы, тесты приемлемости, тесты модулей и исходный код. Авторы описывают, как создаются и используются на практике эти примеры, ведь одно дело говорить о тестировании перед разработкой и совсем другое — шаг за шагом продемонстрировать пример с работающей программой.

Эта книга фактически показывает, как реализуется экстремальное программирование. Книга будет полезна всем, кто активно участвует в разработке программного обеспечения — разработчикам, менеджерам и даже заказчикам. Вы можете и не применять подход ХР в вашем следующем проекте, но все равно выиграете от прочтения этой книги. Отдельные принципы ХР сами по себе достаточно эффективны, и вряд ли найдется хоть одна команда, которая бы не выиграла от внедрения одного или двух из этих принципов.

320 стр., с ил.; ISBN 5-8459-0329-7, 0-1306-7482-6; формат 70x100/16; мягкий переплет; тип бумаги: газетная; 2002, 3 кв.; Вильямс.



Понравилась книга? Порекомендуйте её друзьям и коллегам:







Книги, рекомендуемые вместе с этой книгой:

Раздел каталога:



Оглавление книги "Практическое руководство по экстремальному программированию"

ПРЕДИСЛОВИЕ
ВВЕДЕНИЕ
ЗНАКОМСТВО: ВПЕРЕД К САМОВЫРАЖЕНИЮ
Часть 1. Игра
1 ЭКСТРЕМАЛЬНЫЕ ПРИНЦИПЫ
2 УЧАСТНИКИ ИГРЫ
Часть 2. Концептуализация системы
3 СОЗДАНИЕ ПРЕДСТАВЛЕНИЯ О СИСТЕМЕ
4 СОЗДАНИЕ ИСТОРИЙ ПОЛЬЗОВАТЕЛЯ
5 СОЗДАНИЕ ПРИЕМОЧНЫХ ТЕСТОВ
6 ОДНО ПРОСТОЕ РЕШЕНИЕ
7 СЛЕДИМ ЗА СЛОВАМИ
Часть 3. Планирование
8 ПРЕДОСТАВЛЕНИЕ ОЦЕНОК
9 ПЛАНИРОВАНИЕ ВЕРСИЙ
10 ПЛАНИРОВАНИЕ ИТЕРАЦИЙ
11 ТАКТИЧЕСКОЕ ПЛАНИРОВАНИЕ
Часть 4. Разработка
12 ПРОГРАММИРОВАНИЕ В ПАРЕ
13 СНАЧАЛА ПРОВОДИТЕ ТЕСТЫ
14 ПРОЕКТИРОВАНИЕ
15 ПРОДУМАННОЕ ПРОГРАММИРОВАНИЕ
16 ПЕРЕРАБОТКА КОДА
17 ПОСТОЯННАЯ ИНТЕГРАЦИЯ
Часть 5. Выпуск готового продукта
18 ВЫПУСК СИСТЕМЫ
Часть 6. Дополнительные темы
19 ВНЕДРЕНИЕ И АДАПТАЦИЯ ХР
20 МАСШТАБИРОВАНИЕ XP
21 БУДУЩЕЕ ЭКСТРЕМАЛЬНОГО ПРОГРАММИРОВАНИЯ
ПРИЛОЖЕНИЕ
БИБЛИОГРАФИЯ
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ


Предисловие

Экстремальное программирование (Extreme Programming - ХР) на сегодня стало реальностью, от которой уже невозможно отказаться. Основная цель - ХР создание высококачественных программ, одно из главных средств - отказ от всего, что не поддерживает непосредственно эту цель. В экстремальном программировании ценится каждый человек: в нем не признается общепринятая философия менеджмента, основанная на том, что люди являются легко заменяемыми компонентами в механизме разработки программного обеспечения. ХР также опирается на следующую концепцию: профессионалы-разработчики вполне могут достичь успеха, просто внедрив ряд взаимно усиливающих принципов и действий, и впоследствии точно следуя им. Такой подход отрицает парадигму предписывающего программирования, в котором применяются процедурные "поваренные книги" для создания систем. Экстремальное программирование - это совершенно другая система, которая утверждает: если вы примете все ее принципы, если будете работать вместе с вашими заказчиками, если сконцентрируетесь на том, что действительно важно, то успешно выполните задачу разработки программного обеспечения. Это звучит так хорошо, что не может быть правдой? К сожалению, так обстоит дело для многих организаций, но если вы решите достичь успеха, то не окажетесь в их числе.

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

Я познакомился с авторами данного издания на конференции ХР2001, проходившей в Сардинии (Италия) весной 2001 года. Решив больше узнать об ХР, я очень стремился попасть на эту конференцию, так как в ней принимали участие все эксперты. Моя компания уже применяла экстремальное программирование, но не было твердой уверенности, что все делается правильно. Данная конференция была великолепным шансом увидеть, как работают другие. Кроме того, можно было узнать, как выполняется моделирование в экстремальных проектах: в тот момент я работал над первой версией гибкого моделирования (Agile Modeling - AM) и надеялся получить информацию от других людей, заинтересованных в этой теме.

В этом заключалась основная причина того, что мы четверо собрались вместе - Рэнди (Гранвилл), Дейв и Миро в то время работали в компании TogetherSoft и поэтому были очень заинтересованы в моделировании. Как и я, они принимали участие в конференции, чтобы узнать больше об ХР и обменяться опытом по применению ХР в реальных проектах.

Именно обмен практическими навыками является основным преимуществом данной книги. Авторы непосредственно участвовали в этом процессе, более того, они стремятся поделиться с вами своим так нелегко приобретенным опытом. Многие аспекты экстремального программирования могут быть для вас новыми - тесты до начала самого программирования, программирование в паре, истории пользователя, участие в разработке заказчиков; применить эти принципы в вашей среде может быть сложно. Однако книга призвана помочь вам понять основные моменты, необходимые для успеха экстремального программирования, так как авторы уже столкнулись со многими проблемами, возможно, волнующими и вас.

Я считаю еще одним достоинством книги то, что она выходит за рамки теории, в ней приводятся яркие примеры ХР, включающие истории пользователя, приемочные тесты, тесты модулей и исходный код. Авторы описывают, как создаются и используются на практике эти примеры, ведь одно дело говорить о тестировании перед разработкой и совсем другое - шаг за шагом демонстрировать пример с работающей программой. Данная книга дает возможность увидеть, как осуществляется экстремальное программирование.

Когда люди впервые сталкиваются с экстремальным программированием, то их первая реакция приблизительно такова: это похоже на правду и ХР действительно должно работать в надлежащей ситуации. К сожалению, затем появляются доводы вроде "наша ситуация особенная, и ХР нам не подойдет. Вероятно, мы не смогли применить это, так как:". Должен вам сказать, что вы не особенные, что у каждой организации имеются свои собственные затруднения. Идеальной ситуации просто не существует, всегда появляются преграды, которые необходимо преодолеть, и вы должны этому научиться. Решите для себя - вы будете считать, что разработка программ в вашей организации неэффективна, или все же посмотрите в лицо проблеме и сделаете все возможное, чтобы работа была сделана? Я убежден, что экстремальное программирование предлагает путь к успеху, который многие команды уже достигли с ХР. Эта книга поможет и вам сделать то же самое.

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

Скотт В. Амблер (Scott W. Ambler),

президент компании Rohin International,

автор книги Agile Modeling - Effective

Practices for Extreme Programming and the Unified Process

Введение

Необходимость экстремального подхода

Часто как бизнесмены, так и разработчики сталкиваются с тем, что традиционные способы разработки программного обеспечения слишком медленны. Бизнесмены рассматривают программное обеспечение как преимущество перед конкурентами, и никогда не бывает, чтобы преимущество такого рода было реализовано чересчур быстро. Разработчики же считают, что традиционные приемы разработки программного обеспечения слишком дороги для решения задачи максимально быстрого внедрения этого преимущества.

Необходимость быстрой разработки привела к тому, что Кент Бек (Kent Beck), Уорд Каннингем (Ward Cunningham) и Рон Джеффрис (Ron Jeffries) стали анализировать исключительные методы разработки. Первый проект экстремального программирования, Chrysler Comprehensive Compensation System (система контроля платежей, под кодовым названием C3), был, с одной стороны, ограничен, а с другой - максимально приближен к граничным срокам. Этот прием был назван "стремиться к максимуму". Результатом стал прорыв в сфере разработки программного обеспечения, получивший название экстремального программирования.

Несомненно, Бек был движущей силой в применении экстремальных методов в этом и многих последующих проектах, он и ныне продолжает совершенствовать ХР. Его концепция развивается, переходя к пересмотру основных принципов проектирования программного обеспечения. Естественно, многие из этих принципов были заменены лучшими и более новыми. Новые принципы, например, работа с самим заказчиком, а не со спецификацией, быстро завоевали приверженцев в сфере программного обеспечения. Идея написания тестов до непосредственного кодирования уже сейчас становится неотъемлемой частью процесса разработки любой программы.

Эта книга ставит целью осветить суть экстремального программирования. Мы проанализировали принципы и создали, надеемся, эффективные методы их применения. Написанное в результате краткое пособие должно помочь вам изучить ХР на практике.

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

Идем дальше

Рассматриваемый в приложении пример, а также другую информацию об этой книге и об экстремальном программировании в общем можно найти на Web-узле компании Saorsa Development Inc. по адресу: http://www.saorsa.com.

Слова благодарности

Следует особо поблагодарить Уорда Каннингема и Кента Бека за то, что они изобрели замечательный процесс разработки программного обеспечения и продолжают делиться с нами своим богатым опытом. Благодарим за помощь Скотта Амблера и Крэга Лармана (Craig Larman), а также всех, кто внес свои идеи по XP2001 и XPUniverse в учебник "Написание историй пользователя". Также хотелось поблагодарить Дитриха Каризиуса (Dietrich Charisius), Андрея Иванова (Andrei Ivanov), Александра Китаева (Alexander Kitaev), Федора Исакова (Fyodor Isakov), Владислава Протасова (Vladislav Protasov), Ярослава Пшеничку (Jaroslav Psenicka), Бориса Блаера (Boris Blajer), Алексея Зубова (Alexei Zubov), Лукаса Нетерду (Lukas Neterda), Радека Дворака (Radek Dvorak), Александра Шаталина (Alexander Shatalin), Данилу Ермакова (Danila Ermakov), Ника Шевелева (Nick Shevelev), Олега Кушникова (Oleg Kushnikov), Владимира Петко (Vladimir Petko), Томаса Пиноса (Tomas Pinos), Яна Херта (Jan Hurt), Владимира Орлова (Vladimir Orlov), "экстремалов" компании TogetherSoft. В книге были использованы статьи Тодда Хансена (Todd Hansen), Пита Макбрина (Pete McBreen), Джона Цукса (John Szucs) и Патрика Уолла (Patrick Wall). Мы также благодарим Зину Миллер (Zina Miller) и Сьюзан Видерхольд (Susan Wiederhold) за редактирование первых вариантов данной рукописи.

В работу над книгой внесли свой вклад также Кен Диери (Ken Deery), Фред Джордж (Fred George), Билл Гринхалг (Bill Greenhalgh), Пит Макбрин (Pete McBreen), Тодд Медлин (Todd Medlin), Чак Проффер (Chuck Proffer), Томас Мюлднер (Tomasz Muldner), Кен Ритчи (Ken Ritchie), Боб Розенберг (Bob Rosenberg), Айвен Томек (Ivan Tomek) и Андре Трудел (Andre Trudel).

Наконец, мы очень признательны Питеру Коду и Лизе Джулиани (Lisa Juliani) за их решительность и поддержку, благодаря чему и появилась эта книга.


Copyright © 1992-2019 Издательская группа "Диалектика-Вильямс"

Rambler  Top100