Scrum Notları - Agile

agile methodology

Intertech de çalışdığım dönemde proje geliştirme yaşam döngümüz waterfall yöntemiydi. Orada çalıştığım süre boyunca (yaklaşık 5 yıl) kendimce bu döngünün eksilerini ve artılarını analiz ediyordum. Bir şekilde yeni fırsatlar karşıma çıktı ve akbank da çalışmaya başladım.

Akbank intertech’den farklı olarak proje süreçlerini agile yönetiyordu ve burada da scrum çatısını benimsemişti. Tabi ilk zamanlar farklı geliyordu bu şekilde yazılım geliştirmek. Ama hızlı bir şekilde adapte olduktan sonra scrum’ın detayları daha fazla ilgi mi çekmeye başladı. Her ne kadar bir scrum takımının içerisinde bulunsakta bunu daha detay öğrenmek ve daha katılımcı bir takım üyesi olmak için çok istekliydim.

Akbank içerisinde Scrum konusunda ekiplere destek veren ve akbank pratiklerini anlatan başka bir scrum takımı AgileStudio var. Agile Studio ekibi belirli periyotlarda eğitim veriyor. Bende bunlardan birine katıldım. işte bu yazı dizisinin hikayeside aslında burada başlıyor. BU eğitimde öğrendiklerimi, not aldıklarımı sizlerle paylaşmak istiyorum.

Hadi başlayalım.

Agile ve scrum’ı çağrıştıran ilham alınacak sözler

Her yaratılış eylemi aslında bir yılım eylemidir. - PABLO PICASSO

Herhangi bir budala bilgisayarın anlayabileceği kod yazabilir.İyi bir yazılımcı insanların anlayabileceği kod yazabilir. - MARTIN FOWLER

Scrum Kayınvalide gibidir, tüm hatalarınızı ortaya çıkarır. - KEN SCHWABER

Ne güçlü olan tür hayatta kalır, ne de zeki olan. Değişime en çok adapte olabilendir, hayatta kalan. - CHARLES DARWIN

Agile Manifestoyu hazırlayanlar temel olarak aşağıdaki eski usul değer yargıları yerine farklı değerleri benimsemenin daha doğru olduğuna savunur.

  • Süreçlerden ve araçlardan ziyade -> Bireyler ve etkileşimlere
  • Kapsamlı dökümantasyondan ziyade -> Çalışan yazılıma
  • Sözleşme pazarlıklarından ziyade -> Müşteri ile işbirliğine
  • Bir plana bağlı kalmak yerine -> Değişime karşılık vermeye değer vermeye kanaat getirdik.

Agile ürün geliştirmeye bakış açısı belirleyen ve prensipler ortaya koyan bir yaklaşım. Bu yaklaşımı daha somut hale getirip, pratiğini ortaya koyan da bir çok yöntem var. Bunlardan birisi de scrumdır.

Agile Çatısı altındaki paratik yöntemler

  • SCRUM
  • ASD – Adaptive Software Development
  • XP – Expreme Programming
  • Kanban
  • DSDM – Dynamic System Development Method
  • FDD – Feature Driven Development
  • Crystal

Agile 12 Prensibi

  • Müşteri Menuniyeti
  • Değişime Adapte Olma
  • Düzenli Teslimat
  • Beraber Çalışma
  • Motive Olmuş Bireyler
  • Yüzyüze iletişim
  • Çalışan Yazılım
  • Sürdürülebilir Tempo
  • Teknik Mükemmeliyet
  • Sadelik
  • Kendi Kendine Organize Olma
  • Sürekli İyileşme

Daha iyi bir yazılım geliştirme sürecine katkı sağlamak için aşağıdaki davranışlarımızı iyileştirebiliriz

  • Kelimeler yerine görseller
  • Dinlemek yerine konuşmak
  • Oturmak yerine hareket etmek
  • Okumak yerine yazmak
  • Uzun yerine kısa
  • Aynı yerine farklı

Linkler

Libertating Structures
Agile Manifesto
Agile Coach - Cihan Yılmaz