Чем Agile отличается от XP?

32

Я прочитал несколько статей в Интернете, чтобы узнать, как Agile, XP, Scrum, парное программирование отличаются друг от друга / связаны друг с другом, и я получил следующую строку:

  1. Scrum и XP почти одинаковы. XP имеет более короткий период релизов, чем Scrum
  2. Парное программирование используется в методологиях Agile и XP.

Но я не смог определить, чем Agile отличается от XP.

Я не просто предоставил бы вам URL, но был бы рад прочитать ваш опыт и мысли по этому поводу.

Гопи
источник

Ответы:

55

Вы путаете проблему. Быть проворным означает, что вы следуете куче ценностей и практик из проворного манифеста . Это оно.

XP и Scrum - это процессы разработки, соответствующие этим ценностям. Оба "так же проворны". Большая разница между Scrum и XP заключается в том, что Scrum не содержит методов, специально предназначенных для программирования , тогда как в XP их много (TDD, непрерывная интеграция, парное программирование).

Мартин Викман
источник
2
+1 XP, Scrum расширяет Agile.
Майкл К
8
+1 за «схватку» не содержит практики специально для программирования »; это абсолютно правильно и должно быть подчеркнуто намного больше. Иными словами, Scrum - это методология управления проектами, а не методология разработки программного обеспечения. Scrum часто используется с гибким методом, но это не обязательно.
Стивен А. Лоу
18

Agile - это общий термин для методологии.

XP и Scrum - это конкретные названия для различных реализаций этой методологии.

Страницы Википедии, вероятно, являются хорошей отправной точкой для дальнейшего чтения - проверьте разделы «Ссылки» и «Дальнейшее чтение» в нижней части каждой страницы, но вам следует изучить каждую и другие реализации, прежде чем выбрать ту, которая работает для вас, или (как уже указывали другие) биты каждой реализации, которые работают для вас.

ChrisF
источник
Таким образом, Xp является частью Agile со Scrum, как и его брат? Чем отличаются Xp и Scrum? Количество дней единственная разница между ними?
Гопи
2
XP является более предписывающим в том, что вам нужно делать (например, он определяет модульное тестирование, парное программирование и т. Д.), Чем Scrum. Scrum больше фокусируется на том, что делает команда в целом, но ничего не говорит о технических приемах (слабая часть scrum применительно к программному обеспечению IMHO). В результате многие люди считают их взаимодополняющими методологиями, а не конфликтующими.
FinnNk
1
+1, многим людям очень неудобно парное программирование. Кроме того, если вы не можете включить намерение методологии разработки в то, что у вас есть (без резких изменений, которые расстраивают людей), что-то очень неправильно. Я продолжаю видеть людей, которые видят указания, но не намерения, стоящие за ними, и я продолжаю очень расстраиваться, когда вижу такие вопросы.
Тим Пост
1
+1: это довольно хороший ответ. Но я должен не согласиться с утверждением о Википедии. Я думаю, что оригинальный постер показывает большую путаницу и полагается на поиск в Google, и Википедия - одна из причин, почему у нас такая неясность в первую очередь. Имена современных Agile экспертов хорошо известны; Я бы рекомендовал читать их блоги и книги.
ажеглов
@azheglov - я понимаю, что ты имеешь в виду. Я пояснил, что я имел в виду, используя страницы Википедии. Разделы «Ссылки» и «Дальнейшее чтение» - это то, на что вы должны обратить внимание.
ChrisF
7

Как ты жаришь курицу?

Это серьезный вопрос. Как вы собираете намерение работы других людей в то, что работает для вас?

Я вижу так много вопросов не только здесь, но и на SO, которые спрашивают: «Должен ли я использовать x, y или Z?» в то время как на самом деле мало внимания уделяется тому, как радикальные изменения могут повлиять на команду или (что еще хуже) на то, что кто-то пытается что-то сделать, не полностью понимая, как это работает. Когда дело доходит до методологии разработки, вы не понимаете ее, пока не используете ее успешно, в противном случае вы просто следуете слепому совету.

Каждый раз, когда я вижу, "Scrum будет работать для меня?" Я спрашиваю: «Я не знаю, ты пробовал это?»

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

В какой момент кто-то сказал: «Следуй за письмом этим методом или будь проклят на всю жизнь»?

Лучший метод - ваша лучшая адаптация опубликованной и оригинальной мудрости, которая работает для вас .

Тим Пост
источник
Хорошо сказал ответ, хотя и не отвечает на вопрос. На плакате даже не говорилось, что он думал об их использовании.
Пьер Арло
5

Agile - это класс методологии разработки программного обеспечения, одним из примеров которого является XP

Scrum - это методология управления проектами, а не методология разработки программного обеспечения . Хотя методология Agile-разработки и Scrum широко распространены, это не является обязательным требованием. Они не одно и то же.

Стивен А. Лоу
источник
0

Практически многие организации не следуют определенной методологии, на 100% похожей на XP или Scrum, как они изложены. Особенно, если они только начали следовать гибким принципам. Они могут выбирать и выбирать определенные аспекты любой методологии, например Scrum, которая входит в Agile. Agile более абстрактен, и легче сказать это, чем сказать, что мы делаем XP или Scrum.

softveda
источник
0

И XP, и Scrum являются методологиями разработки программного обеспечения в соответствии с методологией гибкого программного обеспечения, они являются частью семейства моделей гибких процессов, включая другие; Crystal, Feature-ориентированная разработка и т.д.

Перейдите по ссылке ниже для дальнейших разъяснений по их различиям.

http://www.mypmhome.com/scrum-vs-extreme-programming-xp/

Неемия
источник