Planlama oyunu, aşırı programlama olarak bilinen bir tür yazılım geliştirmenin bir parçasıdır. Oyundaki "müşteriler" ve "programcılar" olarak adlandırılan işletme ve gelişim personelinin, yeni bir yazılım parçası geliştirmek için işbirliği yaptığı, oyun benzeri bir ortam yaratır. Planlama oyununun iki bölümü vardır: sürüm planlama ve yineleme planlama.
Yayın planlaması, planlama oyununun ilk aşamasıdır; burada ekip üyeleri, hangi özellik yazılımının bulunacağını ve özellikleri geliştirmenin ne kadar süreceğini belirler. Oyun, müşterilerin “hikayeler” yaratmasıyla başlar. Bu bağlamdaki hikayeler, yazılımdan istenen son sonucun kısa açıklamalarıdır. Her hikaye genellikle ayrı bir dizin kartına yazılır. Müşteriler oyunun herhangi bir yerinde hikayeler yaratabilirler.
Programcılar daha sonra hikayeleri alır ve maliyeti veya her bir hikayeyi tamamlamak için harcayacağı süreyi tahmin eder. Müşteriler maliyet tahminlerini yaptıktan sonra, hikayeleri öncelik sırasına göre yerleştirir. Programcılar ve müşteriler, süreç boyunca tahminleri ve öncelikleri netleştirmek için birbirlerine sorular sorabilirler. Ekip ayrıca işlem sırasında yeni hikayeler ekleyebilir veya büyük bir hikayeyi birden fazla hikayeye bölebilir. Bu her gerçekleştiğinde, yeni hikaye veya hikayelerin kendilerine atanan bir maliyeti ve önceliği olmalıdır.
Programcılar maliyet tahminlerinde kesin söz sahibi olurlar ve müşteriler önceliklerinde son söz sahibi olurlar, böylece her grup kendi uzmanlık alanları üzerinde nihai otoriteye sahip olur. Maliyetler ve öncelikler tamamlandıktan sonra, takım serbest bırakma planını taahhüt eder. Bir sürüm planı "veri odaklı" veya "hikaye odaklı" olabilir.
Veri güdümlü taahhüdünde, müşteriler bir çıkış tarihi belirler ve programcılar geliştirmek için ne kadar zaman harcayabileceklerini belirler. Son olarak, müşteriler o zamana kadar eklemek için hikayeler seçerler. Hikayeye dayalı bir sürüm planı, müşterilerin sürümlere öyküler eklemeye başlaması anlamına gelir ve programcılar seçilen öyküler için sürüm tarihini belirler. Müşteriler, seçilen toplu hikayelerin bir sonraki sürüm olarak birlikte çalışabileceğine karar verene kadar hikaye eklemeye devam edebilirler.
İterasyon planlama, yazılım geliştirme sırasında gerçekleşen devam eden planlamadır. Planlama oyunundaki yinelemeler, iki haftalık aralıklarla gerçekleşir; bu sırada programcılar, sürüm planlama sırasında seçilen öykülerden bazıları için faydalı yazılımlar oluşturur. Her iki haftanın sonunda, müşteriler gelecek iki hafta boyunca yaratmak istedikleri hikayeleri seçerler ve programcılar o zaman gerçekten yapabilecekleri iş miktarını hesaplarlar.


