Perbedaan antara sistem dorong dan tarikan adalah bagaimana unit-unit kerja ditugaskan kepada orang yang akan menjalankan unit kerja itu. Konsep push and pull tidak unik untuk pengembangan perangkat lunak - idenya berasal dari logistik dan manajemen rantai pasokan .
Dalam sistem push, beberapa jenis tugas dibuat dan kemudian ditugaskan ke pengembang. Tugas dapat berupa apa saja dari penerapan persyaratan (atau komponen yang diperlukan untuk mewujudkan persyaratan) hingga perbaikan bug hingga dokumen untuk ditulis. Seseorang, biasanya semacam manajer atau pemimpin tim, mengambil unit pekerjaan yang perlu dilakukan dan kemudian mengalokasikannya kepada anggota tim untuk diselesaikan. Sederhananya, pekerjaan didorong kepada orang-orang yang akan melakukannya.
Dalam sistem tarikan, tugas yang harus dilakukan disimpan dalam antrian, seringkali berupa antrian prioritas. Contohnya mungkin produk Scrum dan sprint backlog, yang berisi cerita pengguna yang harus dilakukan. Pengembang yang saat ini tidak mengerjakan apa pun akan masuk ke antrean dan melepas cerita prioritas tertinggi yang dapat mereka lakukan dan kerjakan. Orang-orang yang melakukan pekerjaan menarik pekerjaan dari daftar dan melakukannya.
Konsep push and pull tidak terkait dengan pengembangan iteratif / inkremental versus sekuensial. Tim yang menggunakan teknik berulang / bertahap / gesit bisa menggunakan sistem dorong, sementara tim yang menggunakan pengembangan sekuensial dapat menggunakan sistem tarikan. Namun, biasanya, metode gesit (XP, Scrum) mendukung tim yang mengatur dirinya sendiri dan karenanya menarik sistem.
Untuk informasi lebih lanjut, Anda mungkin tertarik dengan posting blog ini di Push vs Pull in Scrum . Kanban mungkin juga menarik - Kanban adalah metodologi yang berasal dari manufaktur, tetapi dapat diterapkan untuk pengembangan perangkat lunak , yang menekankan pengembangan tepat waktu dan mengurangi kelebihan pekerja. Kanban juga terkait dan sering digunakan dengan Lean , konsep manufaktur lain yang dapat diterapkan pada pengembangan perangkat lunak .