Araçlar
AliCengiz
AliCengiz (Jenkins) geliştiricilerimizin ve sistem yöneticilerimizin, düzenli olarak yapmak durumunda kaldıkları işleri onlar adına yapmak için var.
Yazılan bir uygulamanın kaynak kod deposundan çekilerek düzenli aralıklarla derlenmesi, test edilmesi, sürüm çıkartılması, istenilen sunuculara yerleştirmesinden ( deploy ) tutun, bir servisin tekrar başlatılmasına, veritabanının senkronize edilmesine kadar sistem yöneticilerinin önceden tanımladığı birçok işlemi geliştiriciler web üzerinden tekrar tekrar ve kolaylıkla yapabiliyorlar.
Doğrucu Davut
(Doğrucu) Davut (Sonar), geliştirdiğimiz Java yazılımların kodlarını belirli yazım kurallarına göre inceler, kalitesini belirli bir düzeyin üzerinde tutmamızı sağlar.
Kodu analiz ederek kodun kaç satır olduğu, sınıf sayısı, kaç kere (sürüm takip sisteminde) revize edildiği, tekrar eden kod parçaları, kod içinde yorum yüzdesi ve daha nice özellikleri gözümüz önüne serer.
Bulduğu hataları raporlamakla kalmayıp, nasıl düzeltileceğini de yazar ve düzeltilene kadar da kafamızın etini yer.
İşlerGüçler
Her bir yapılan çalışma, birbirinden ayrılabilecek, başı ve sonu belli, angarya olmayacak en küçük parçasına kadar bölünüyor ve birer “iş” halinde yazılıyor. İşler birbirleriyle ilişkilendiriliyor, bazı işlerin daha küçük olan “birimiş”leri açılıyor.
Daha sonra bu işler uygun bir kişilere atanıyor. İş “Taze” (hiç dokunulmamış) durumundan başlayıp “Kapandı” aşamasına kadar adım adım ilerliyor. İş yapılırken bunu herkes takip edebiliyor, anında müdahale ederek görüşlerini yazabiliyor.
Hem projenin gelişimi adım adım herkes tarafından izlenip, yorumlanabiliyor; hem de projenin sadece sonucu değil, süreci de belgelenmiş oluyor. Hangi çalışmayı kimin, neden, ne zaman yaptığını istediğimiz zaman dönüp inceleyebiliyoruz.
İşlerGüçler, wiki adını verdiğimiz bir belgeleme aracını da beraberinde taşıyor. Projelerle ilgili yazdığımız belgeleri de ilgili projenin İşlerGüçler içindeki wiki alanına yerleştiriyoruz. İşlerle wiki sayfalarını bağlantılandırıyoruz.
Lab
Gitlab, bizim kaynak kodlarımızı yerleştirdiğimiz bir sürüm takip sistemi. Kaynak kodları üzerinde yaptığımız değişikliklerin neler olduğunu, kimlerin yaptığını ve ne zaman yaptığını bir dedektif gibi izliyor, not ediyor ve daha sonra sorulduğunda tüm secereyi önümüze seriyor.
Aldığı bu notlar sayesinde, istediğimiz anda kodun herhangi bir anına da geri dönüş yapabiliyoruz.
Kendi bilgisayarlarımıza aldığımız yerel depo kopyaları üzerinde yapılan işlemlerin daha sonra tarihçesi ile beraber ana depoya aktarılmasını desteklediği için, İnternet bağlantısı olmadan çalışırken de sürüm takibi yapabiliyoruz.
GIT’in bize sağladığı önemli bir artısı da, dağıtık yapısı nedeniyle, üzerinde çalışmak istediğimiz başka özgür yazılım projelerinin GIT depolarını da tarihçeleri ile beraber kolaylıkla kendi depolarımıza monte edebilmemiz.