Экстремальное программирование

Материал из PraxOS

(Различия между версиями)
Перейти к: навигация, поиск
(дописаны практики IXP)
Строка 1: Строка 1:
Система организационных паттернов ("правил" и принципов их применения), использующаяся в организации работы небольшого коллектива программистов.  
Система организационных паттернов ("правил" и принципов их применения), использующаяся в организации работы небольшого коллектива программистов.  
-
Подробнее о паттернах экстремального программирования (eXtreme Programming, XP) можно прочесть тут: http://www.exprogramming.ru/XPRules/XPRules.html -- но это только первая версия правил, которая (в полном соответствии с принципами самого экстремального программирования -- менять его, если что-то не удовлетворяет, выпускать рано, выпускать версии -- обновлялась с тех пор два раза (так называемое "второе издание" в 2004 году, а затем induxtrial XP).
+
Подробнее о паттернах экстремального программирования (eXtreme Programming, XP) в первой версии (1999г.) можно прочесть в
 +
http://www.exprogramming.ru/XPRules/XPRules.html -- но это только первая версия правил, которая (в полном соответствии с принципами самого экстремального программирования -- менять его, если что-то не удовлетворяет, выпускать рано, выпускать версии) в.  2004г. была существенно переработана во второй версии (http://www.maxkir.com/sd/extreme_programming_2.html). Изменения существены: практика "планирующая игра" заменена четырьмя разными -- "рассказы", "еженедельный цикл", "ежеквартальный цикл" и "слабина"; практика "метафора" выкинута, и т.д. Также экстремальное программирование получило развитие в "промышленном экстремальном программировании" (т.е. приспособленном для работы в больших корпорациях).
-
Экстремальное программирование интересно тем, что именно на его примере отрабатывалось понимание того, как может быть устроено письменное представление организационных паттернов и коллективное их обсуждение, для целей такого коллективного обсуждения была создана первая в интернете wiki-система коллективного редактирования текстов.
+
Вот список практик "промышленного XP" (оригинал -- http://industrialxp.org)
-
 
+
-
Вот список практик "промышленного XP" (оригинал -- http://industrialxp.org
+
* Бизнес-практики (Industrial)
* Бизнес-практики (Industrial)
** ОценкаГотовности (ReadinnessAssesment)
** ОценкаГотовности (ReadinnessAssesment)
Строка 16: Строка 15:
** Рассказывание (Strorytelling)
** Рассказывание (Strorytelling)
** ПланирующаяИгра (PlanningGame)
** ПланирующаяИгра (PlanningGame)
-
**  
+
** Тестории (Strorytesting)
-
<будет продолжено>
+
** ЧастыеРелизы (FrequentReleases)
 +
** МалыеКоманды (SmallTeams)
 +
** СидетьВместе (SittingTogether)
 +
** НепрерывноеОбучение (ContinuousLearning)
 +
** ПошаговаяПригодность (IterativeUsability)
 +
* Программистские практики (Programming)
 +
** ЭволюционныйДизайн (EvolutionaryDesign)
 +
** Рефакторинг (Refactoring)
 +
** РазработкаПоРассказамТестам (StoryTest-DrivenDevelopment)
 +
** ДизайнПоПредметнойОбласти (DomainDrivenDesign)
 +
** НепрерывнаяИнтеграция (ContinuousIntegration)
 +
** Спаривание (Pairing)
 +
** КоллективноеВладение (CollectiveOwnership)
 +
** СтандартыКодирования (CodingStandard)
 +
* Ретроспективы (Retrospectives)
-
В экстремальном программировании можно особо выделить следующие праксиологические паттерны:
+
Экстремальное программирование интересно тем, что именно на его примере отрабатывалось понимание того, как может быть устроено письменное представление организационных паттернов и коллективное их обсуждение, для целей такого коллективного обсуждения была создана первая в интернете wiki-система коллективного редактирования текстов.
-
[[ВсеПланыВнеГоловы|ВсеПланыВнеГоловы]] -- планирование на карточках
+
В настоящий момент практики (паттерны) экстремального программирования входят в огромное число других методов, относящихся к расторопным (agile) методам и используются повсеместно -- часто без указания на то, что они пришли именно из экстремального программирования.
-
[[МаленькийШагПланирования | МаленькийШагПланирования]] -- итерации
+
-
[[ОценкиПоПрошлойПроизводительности ]] -- оценки работы и Скорость проекта
+
-
[[Наставник]] -- "тренер"
+
-
[[РолевыеПереговоры]] -- планирующая игра
+
-
[[Проксимология]] -- обустройство помещения
+
-
[[ВыпускайРано]] --
+
-
[[ВыпускайВерсии]] -- частые релизы
+
-
=== Литература ===
+
В экстремальном программировании можно особо выделить следующие праксиологические паттерны:
-
Обзор XP версии 2.0 (пять ценностей, четырнадцать принципов, тринадцать главных практик и одиннадцать дополнительных -- 2005г., написана Кентом Беком и Цинтией Андерс): http://www.maxkir.com/sd/extreme_programming_2.html. Изменения существены: практика "планирующая игра" заменена четырьмя разными -- "рассказы", "еженедельный цикл", "ежеквартальный цикл" и "слабина"; практика "метафора" выкинута, и т.д.
+
-
Продолжение XP версии 2.0 -- IndustrialXP -- http://industrialxp.org/, развивается Industrial Logic http://industriallogic.com/index.html
+
* [[ВсеПланыВнеГоловы|ВсеПланыВнеГоловы]] -- планирование на карточках
 +
* [[МаленькийШагПланирования | МаленькийШагПланирования]] -- итерации
 +
* [[ОценкиПоПрошлойПроизводительности ]] -- оценки работы и Скорость проекта
 +
* [[Наставник]] -- "тренер"
 +
* [[РолевыеПереговоры]] -- планирующая игра
 +
* [[Проксимология]] -- обустройство помещения
 +
* [[ВыпускайРано]] --
 +
* [[ВыпускайВерсии]] -- частые релизы

Версия 04:14, 19 июня 2007

Система организационных паттернов ("правил" и принципов их применения), использующаяся в организации работы небольшого коллектива программистов.

Подробнее о паттернах экстремального программирования (eXtreme Programming, XP) в первой версии (1999г.) можно прочесть в http://www.exprogramming.ru/XPRules/XPRules.html -- но это только первая версия правил, которая (в полном соответствии с принципами самого экстремального программирования -- менять его, если что-то не удовлетворяет, выпускать рано, выпускать версии) в. 2004г. была существенно переработана во второй версии (http://www.maxkir.com/sd/extreme_programming_2.html). Изменения существены: практика "планирующая игра" заменена четырьмя разными -- "рассказы", "еженедельный цикл", "ежеквартальный цикл" и "слабина"; практика "метафора" выкинута, и т.д. Также экстремальное программирование получило развитие в "промышленном экстремальном программировании" (т.е. приспособленном для работы в больших корпорациях).

Вот список практик "промышленного XP" (оригинал -- http://industrialxp.org)

  • Бизнес-практики (Industrial)
    • ОценкаГотовности (ReadinnessAssesment)
    • НепрерывноеУправлениеРиском (ContinuousRiskManagement)
    • Уставописание (ProjectChartering)
    • СообществоПроекта (ProjectComunity)
    • УправлениеПоТестам (Test-DrivenManagement)
  • "Экстремальные" практики (eXtreme)
    • СамоподдерживающийсяРитм (SustainablePace)
    • Рассказывание (Strorytelling)
    • ПланирующаяИгра (PlanningGame)
    • Тестории (Strorytesting)
    • ЧастыеРелизы (FrequentReleases)
    • МалыеКоманды (SmallTeams)
    • СидетьВместе (SittingTogether)
    • НепрерывноеОбучение (ContinuousLearning)
    • ПошаговаяПригодность (IterativeUsability)
  • Программистские практики (Programming)
    • ЭволюционныйДизайн (EvolutionaryDesign)
    • Рефакторинг (Refactoring)
    • РазработкаПоРассказамТестам (StoryTest-DrivenDevelopment)
    • ДизайнПоПредметнойОбласти (DomainDrivenDesign)
    • НепрерывнаяИнтеграция (ContinuousIntegration)
    • Спаривание (Pairing)
    • КоллективноеВладение (CollectiveOwnership)
    • СтандартыКодирования (CodingStandard)
  • Ретроспективы (Retrospectives)

Экстремальное программирование интересно тем, что именно на его примере отрабатывалось понимание того, как может быть устроено письменное представление организационных паттернов и коллективное их обсуждение, для целей такого коллективного обсуждения была создана первая в интернете wiki-система коллективного редактирования текстов.

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

В экстремальном программировании можно особо выделить следующие праксиологические паттерны: