Öncelikle, @ DXM'in cevabındaki neredeyse hiçbir şey Agile ile olan deneyimimle eşleşmiyor, özellikle Scrum ile değil.
Çevik Manifesto kapsamlı dokümantasyon değerli iken, yazılım çalışma DAHA değerli olduğunu belirtmektedir. Bu nedenle, dokümantasyon kesinlikle kötü bir şey değildir, ancak çalışan bir yazılım oluşturmak için gerçekten de hizmette olması gerekir.
Bireyler ve süreçler ve araçlar üzerindeki etkileşimler
Kapsamlı dokümantasyon üzerinde çalışan yazılım
Sözleşme müzakere konusunda müşteri işbirliği
Bir planı takip etmeyi değiştirmeye cevap vermek
Yani, sağdaki öğelerde değer varken, soldaki öğelere daha çok değer veriyoruz.
Kodlamaya başlamadan önce her detayın geri gönderilmesinin tekrar tekrar boşa çıktığı kanıtlanmıştır, bu nedenle dokümantasyon genellikle JIT (tam zamanında) şekilde ele alınır. Yani, gerçekte neyi kodlayacağınızı belgelersiniz.
Scrum'u yapmanın popüler yollarından biri, Ürün Sahibi tarafından tutulan ve Ürün İş Listesinde tutulan Kullanıcı Öykülerini kullanmaktır. Ürün İş Listesi, bir çözümün yapması gereken tüm öğelerin oldukça yüksek bir listesidir ve bir Kullanıcı Öyküsü genellikle listedeki her şeyi açıklamak için güzel bir boyuttadır. Kullanıcı Hikayeleri zorunlu değildir, ancak ayrıntıları aşmamak ve işbirliğine ilham vermenin iyi bir yolu gibi görünmektedir.
Her neyse, bir hikaye yapıldığında - ekip kabul kriterlerini karşılayan bir şey yarattı, test etti ve kullandı, hikaye CHUCKED değil, sadece backlog üzerinde yapıldı. Her sprintte neler yapıldığı hakkında - hikayeler ve bunlarla ilişkili noktalar. Bu, hızı hesaplamanıza izin veren şeydir ve kendi başına değerli belgelerdir.
Bununla birlikte, bir Kullanıcı Hikayesi, bir gereksinimi anlamak için gereken tüm belgeler olabilir, ancak daha büyük olasılıkla, müşteri ile geliştirme ekibi arasında bir sohbet oluşturmak bir şeydir. Bu nedenle, bu konuşmanın çevresinde yapabileceğiniz birçok şey var. Yüz yüze özel bir şeyse, sık sık olduğu gibi, analist / geliştiriciler (belki de kuruluşunuza bağlı olarak) hangi kararları aldıklarını yazabilir ve Wiki ya da dokümantasyon deposu. Bu bir e-posta sohbeti ise, e-postaları kaydedebilirsiniz. Bir beyaz tahta oturumu varsa, tahtanın resmini cep telefonunuzla çekin ve kaydedin. Mesele şu ki, bunlar kodun yapılmasında size yardımcı olan şeylerdir ve nasıl yaptığınız veya neden yaptığınız gibi bir şey bulmanız gerekiyorsa size daha sonra yardımcı olabilir.
Gereklilikleri yakalamanın başka bir yöntemi, bunları hemen test senaryolarına yerleştirmektir (DXM'nin ne elde ettiğine inanıyorum). Zaten her gereksinim için test etmeniz gerektiğinden bu gerçekten verimli olabilir. Bu durumda, gereksinimlerinizi test aracınızda etkili bir şekilde saklayabilirsiniz.
Bir hikaye tamamlanırsa (ve kabul edilirse) ve kullanıcı ihtiyacını değiştirirse, o zaman muhtemelen yeni bir hikaye oluşturmanız gerekir. Dokümantasyonunuz için bir wiki kullanırsanız, yeni hikayeyi orijinal haline geri bağlayabilir ve aynı şekilde orijinal hikayeyi yeni öğelere yönlendirerek, ona bakacak birisinin bu durumun değiştiğini bilmesini sağlayabilirsiniz. Wikiler hakkındaki güzel şey bu - bağlantıları bağlamak kolay ve oldukça acısız. Teste dayalı yaklaşımı kullanıyorsanız, değişiklikle başa çıkmak için test vakasını güncelleyin ya da yeni ve eski birbirini dışlamazsa, yeni hikaye için yeni test senaryoları oluşturun.
Sonunda, ihtiyacınızın ne olduğuna bağlı. Asıl mesele milleti hızlı bir şekilde hızlandırmaksa, birinin yardım için onboarding bir belge yazması iyi bir fikir olabilir. Yani bunu birileri yapsın. Bahsettiğim gibi, Wiki'ler bu tür bir şeyi sürdürmek için harika bir araçtır, bu nedenle Atlassian'ın hikayelerinizi / görevlerinizi / kusurlarınızı izlemek ve projenizi genel olarak yönetmek için Wira ile Jira ve Greenhopper'ı birleştirebilecek çözümleri düşünebilirsiniz . Seçilebilecek çok sayıda başka araç var.