푸시 및 풀 시스템의 차이점은 작업 단위를 해당 작업 단위를 수행 할 사람에게 할당하는 방법입니다. 푸시 앤 풀이라는 개념은 소프트웨어 개발에만 국한된 것이 아니라 물류 및 공급망 관리에서 비롯된 아이디어 입니다.
푸시 시스템에서는 일종의 작업이 생성되어 개발자에게 할당됩니다. 작업은 요구 사항의 구현 (또는 요구 사항을 실현하는 데 필요한 구성 요소)에서 작성할 문서의 버그 수정에 이르기까지 모든 것이 될 수 있습니다. 일반적으로 일종의 관리자 또는 팀 리더 인 누군가는 수행해야하는 작업 단위를 가져 와서이를 팀 구성원에게 할당하여 완료합니다. 간단히 말해서, 일을 할 사람들에게 일이 밀려납니다.
풀 시스템에서 수행해야 할 작업은 종종 우선 순위 대기열에 저장됩니다. 예를 들어 Scrum의 제품 및 스프린트 백 로그가 있으며 여기에는 수행 할 사용자 스토리가 포함됩니다. 현재 작업을하고 있지 않은 개발자는 대기열로 이동하여 작업을 수행하고 수행 할 수있는 최우선 순위 스토리를 수행합니다. 작업을 수행하는 사람들은 작업을 목록에서 꺼내어 수행합니다.
푸시 앤 풀의 개념은 반복 / 증분 대 순차적 개발과 관련이 없습니다. 반복 / 증분 / 애자 기술을 사용하는 팀은 푸시 시스템을 사용할 수 있고 순차적 개발을 사용하는 팀은 풀 시스템을 사용할 수 있습니다. 그러나 일반적으로 민첩한 방법 (XP, Scrum)은 자체 구성 팀을 선호하므로 시스템을 끌어냅니다.
자세한 내용은 Push vs. Pull in Scrum 에 대한이 블로그 게시물에 관심이있을 수 있습니다 . Kanban 도 관심을 가질 수 있습니다. Kanban은 제조 과정에서 제공되는 방법론이지만 소프트웨어 개발에 적용 할 수 있습니다 . 이는 소프트웨어 개발 에 적시에 개발 및 작업자의 과부하 감소를 강조합니다. Kanban은 소프트웨어 개발에 적용될 수있는 또 다른 제조 개념 인 Lean 과도 관련되어 있으며 종종 사용됩니다 .