Günlük oluşturma, programı oluşturan tüm dosyaların her gün çalıştırılabilir bir dosya haline getirildiği ve her seferinde biraz farklı bir programın ortaya çıktığı bir programın test edilme yöntemidir. Bir programın yeniden düzenlenmesi gereksiz gibi görünse de, kolay kalite kontrolleri ve daha kolay kodlama entegrasyonu da dahil olmak üzere birçok avantaj sunar. Günlük yapı derlendiğinde, her şeyin doğru çalıştığından emin olmak için programın kontrol edildiği duman testi olarak bilinen bir işlemden geçer. Bu yöntem, üzerinde çalışan birçok farklı programcının bulunduğu yazılımlar için iyidir, ancak küçük programlar için çok etkili değildir.
Bir yazılım geliştirme ekibi bir program oluşturduğunda, ekip programı bir kez derleyebilir ve ardından bu programın üzerine yükseltmeler yapabilir. Teknik olarak, bu yaklaşımda yanlış olan bir şey yoktur, ancak günlük inşa yöntemini kullanmak daha iyi olabilir. Her günün başında, programcılar tüm yeni kaynak kodlarını ve dosyalarını alacak ve programı yeniden düzenlemek için derleyecektir. Bu, yazılımın günlük olarak güncelleneceği anlamına gelir.
Programı her gün yeniden oluşturmak bazı kullanıcılar için bir angarya gibi görünebilir, ancak birkaç avantaj sunar. Program her gün güncellenmektedir - yalnızca büyük bir güncelleme yapıldığında değil - kalite kontrolleri daha kolaydır; eğer bir hata aniden ortaya çıkarsa, programcılar hatanın en son kodlamadan kaynaklandığını bileceklerdir. Büyük geliştirme ekipleri, kaynak kodun farklı bölümlerinde çalışan birçok farklı programcıya sahiptir ve her bölümün ana ürüne entegre edilmesi gerekir. Günlük bir derleme yaparak, programcılar her gün entegrasyonun başarılı olup olmadığını veya entegrasyon sorunları olup olmadığını bilirler. Bu aynı zamanda morali de artırabilir, çünkü bazı programcılar programın tüm güncellemeleriyle çalıştığını görmekten heyecan duyabilir.
Yazılım derlendikten ve güne kullanıma hazır olduktan sonra, programcılar duman testi yapacaklardır. Bir duman testi, programcıların kodlama, işlevsellik veya kullanımdaki hataları kontrol etmelerini sağlar. Bu, her bir işlev ve aracın içinden geçen bir programcı kadar basit olabilir veya onaylayıcılar ve güvenlik açığı denetleyicileri gibi diğer programları kullanmak kadar kapsamlı olabilir.
Günlük oluşturma yöntemi genellikle küçük programlar için iyi değildir, çünkü programlar çok az günlük bir değişiklik yaşar. Bu yöntem, aynı program üzerinde aynı anda çalışan onlarca, yüzlerce veya binlerce programcının çalıştığı programlar içindir. Bu yöntem daha küçük bir programın kontrol edilmesine yardımcı olsa da, daha küçük program aynı faydaları yaşamayabilir.


