애자일, 칸반 등을 위해 극단적 인 프로그래밍 (XP)이 구식 인 이유는 무엇입니까?


15

나는 XP (익스트림 프로그래밍), 특히 같은 화면에 두 명의 프로그래머가있는 부분을 좋아합니다. 왜냐하면 당신이하고있는 일을 설명하고 프로그래밍을 강제하면 당신이하는 것을 설명 할 때 문제 해결책이 더 빨리 발견되기 때문에 하기.

지난 10 년 정도 동안 XP 스타일의 작업 방식은 애자일 및 / 또는 Kanban과 같은 작업 방법론에 유리한 것으로 보입니다. 왜? XP는 내가 작업하기에 아주 좋은 방법 인 것 같고 프로그래밍에 관한 것이 많지만 Agile과 Kanban은 프로세스에 관한 것입니다.


28
XP 는 민첩한 접근 방식입니다. 따라서 "Agile"은 실제로 XP를 대체 할 수 없습니다.
Joachim Sauer

1
Volker 's 가 거의 똑같이 말하는 것을 보았을 때 답을 게시하려고했습니다 . 민첩한 프로세스는 본질적으로 적응 형이며 Kanban, Scrum, XP와 같은 "완벽한 / 순수한"같은 것은 없습니다. XP는 그 개념이 거의 모든 다른 접근법에 의해 채택되었다는 점을 감안할 때 여전히 강력합니다.
yannis

3
XP의 Wikipedia 에 대한 흥미로운 비판 목록이 있지만 스캔하면 대부분 Agile에 적용됩니다.
yannis

3
XP가 어디로 갔다고 생각하지 않습니다. 그것의 대부분은 민첩한 개발의 일부로 간주됩니다. 스타일에서 벗어난 것은 '익스트림'이라는 용어를 사용하는 것 같습니다. 그것은 항상 나에게 Mt. 스노 보드가있는 이슬이 책상에 기대어있었습니다.
JimmyJames

"Pair Programming"전체가 해결되지 않았습니다 (IMO). 격리 된 특정 문제를 해결하는 데는 좋지만 대부분의 프로그래밍 문제 (사용자 인터페이스, 아키텍처, 비즈니스 규칙)는 두 명의 소프트웨어 개발자가 같은 화면에 앉아 있어야하는 비용을 정당화하지는 않습니다.
Robert Harvey

답변:


21

전체 필드 개발과 관련된 다양한 스타일, 방법 및 사고 방식이 있으며 모든 것이 고유 한 이름을 가지고 있습니다.

애자일은 일반적인 정적 프로그래밍 모델 (폭포와 같은)에서 멀어지게하는 사고 방식 일뿐입니다. 주요 목표는보다 유연한 개발을 달성하고 더 나은 소프트웨어와 행복한 고객을 얻는 것입니다. 민첩성 아래에는 Scrum, Kanban, XP와 같은 다양한 모델이 있습니다.

특히 Kanban은 원래 소프트웨어 개발에서 나온 것이 아니며 자동차 제작에서 비롯된 것입니다 (Toyota는 자동차 제작을 위해이를 도입했으며 일부 소프트웨어 개발자는이를 채택하고 확장했습니다).

페어 프로그래밍, 코드 리뷰 및 그와 같은 것들은 도구 일뿐입니다. 어떤 방법을 사용하든 프로젝트 중에 항상 할 수 있습니다. 이 물건은 정적 인 것보다 민첩한 것보다 더 고유합니다.

XP는 이러한 것들을 다소 소개하거나 (적어도 반짝이는 이름을주었습니다) 다음의 모든 것들이 단순히 잘 작동했기 때문에 채택했습니다.


3
@refro도 언급했듯이 Scrum과 Kanban에는 페어 프로그래밍이나 코드 리뷰가 포함되어 있지 않습니다 (그러나 이것도 제외하지는 않습니다). 둘 다 소프트웨어 개발 프로세스보다 프로젝트 관리 방법론에 가깝습니다. 따라서 소프트웨어 개발 이외의 다양한 분야에 적용 할 수 있습니다. XP는 특히 소프트웨어 개발 방식입니다. 이들은 공존 할 수 있습니다. XP 팀을 스크럼 방식으로 관리 할 수 ​​있습니다.
Péter Török

16

내 생각에 XP는 프로그래밍 관행이고 Scrum과 kanban은 프로젝트 관리 관행입니다. 그들은 관계가 있지만 서로를 대체하지는 않습니다.

kanban 프로젝트에서는 페어 프로그래밍 (주로 복잡한 섹션 및 디버깅), TDD, CI를 사용합니다. 따라서 여전히 사용되지만 관리는 프로젝트 관리 측면을 더욱 어렵게 만들고 있습니다.


1
페어 프로그래밍은 뮤지션 관행의 방해와 같습니다. 때때로 작동하고 때로는 전혀 작동하지 않습니다. 드문 경우지만 일반적인 연주 방법으로 , 아주 드문 경우에는 작곡 방법 으로 채택 할 수 있습니다 .
Alex Yu

0

익스트림 프로그래밍은 개발 메커니즘에 관한 것이고 애자일은 SDLC (소프트웨어 개발 수명주기)에 관한 것입니다.

더 이상 이름으로 "Extreme Programming"에 대해 듣지 못하는 주된 이유는 "Extreme"이라는 용어를 긍정적 형용사로 사용하는 것이 구식 90 년대 초반의 오래된 것입니다. 주로 마케팅의 희생자입니다. 그렇기 때문에 "XP"라고하는 말을 구두로 거의 독점적으로들을 수 있습니다.


0

페어 프로그래밍에 대한 생각이 있습니다.

나에게 이것은 당신이 무언가에 갇혀있을 때하는 일입니다. 그 당시에는 매우 효과적 일 수 있으며, 그것은 당신을 틀에 박히게 만들 수 있습니다. 그러나 스테레오 타입 프로그래머가 가끔 이상으로하는 것을 좋아하지 않는 것은 피곤하고 일하는 방식이기도합니다.

당신이 구멍을 파고 있다면, 소수의 사람들이 동료의 도움을 받고 싶어 할 것입니다. 그러나 창의력이 생기 자마자 사람들은 다른 사람보다 자신의 길을 선호합니다. 따라서 어떤 식 으로든 상관하지 않거나 한 사람의 역할이 명확하게 제안하는 것이 아니라면 긴장은 항상 가깝습니다.

작업 쌍 프로그래밍은 공식화되지 않았지만 임시 세션이 있으며 일반적으로 간단합니다. "동료 여러분, 극단적 인 프로그래밍은 어떻습니까?" 더 자주 "내 화면을 볼 수 있습니까?"로 시작합니다. 의자를 들어 올리십시오.

따라서 쌍 프로그래밍이 죽거나 덜 인기 있다고 생각하지 않습니다. 비용이 많이 들기 때문에 주로 사용하지 않는 도구 중 하나 일뿐입니다. 두 명의 유료 직원이 한 가지 일을하고 있기 때문이 아닙니다.


0

애자일은 소프트웨어 구축 프로세스와 관련된 다양한 역할과 책임을 가진 다양한 이해 관계자를 포함하기 때문에보다 시장성이 있습니다.

Kent Beck은 두 번째 버전에서 XP 내 참가자의 범위를 확대했을 때 늦었습니다. 첫 번째 XP 버전이 코드 작성자를 대상으로하기 때문에 사람들은 이미 다른 방법론을 받아 들였습니다. XP는 태어날 때 마케팅 할 수 없었습니다.


0

저는 항상 스크럼이 경영진에게 판매하기 가장 쉬운 애자일 버전이라고 생각했습니다.

스프린트를 충분히 길게 늘리고 작은 "포커 카드"를 진지하게 받아들이십시오. Scrum은 Waterfall 방법과 같은 가려움증을 간질이게 만들 수 있습니다. 이것은 반드시 나쁘지는 않지만, 연기와 거울 뒤에 숨어서는 안됩니다.

XP 측면에서, 페어 프로그래밍은 일반적으로 관리, 특히 비 기술적 관리에 호소하지 않습니다.

SAT 유추 형식으로 바꾸려면 Scrum : XP :: The Monkees : The Beatles

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.